linux - Bash:将 linux 中的文件拆分为 10 个仅由空行组成的文件

标签 linux bash file scala split

我目前正在使用一些文件来使用 Scala 应用程序进行解析。问题是文件太大,所以它们最终总是在堆大小中抛出异常(我已经尝试了最大堆大小,但仍然没有用)。

现在,文件看起来像这样:

This is
one paragraph
for Scala
to parse

This is
another paragraph
for Scala
to parse

Yet another
paragraph

等等。基本上我想把所有这些文件分成 10 或 20 个,但我必须确保结果中的段落没有分成两半。有什么办法吗?

谢谢!

最佳答案

csplit file.txt/^$/{*}

csplit 以指定模式分割文件。

/^$/ 匹配空行。

{*} 无限重复之前的模式。

关于linux - Bash:将 linux 中的文件拆分为 10 个仅由空行组成的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22674245/

相关文章:

java - 保存文件Java时出现空指针异常

linux - 如何从 shell 中的三个中随机选择第一台机器?

linux - 在 Linux 脚本中设置 classPath

linux - 如何使用 expect 脚本测试 SSH 连接

linux - 如何更新 tar(不附加)

python - 遍历目录并打印每个文件的内容 [PYTHON]

java - 如何使用 java 建立网络接口(interface)?

bash - 如何按字母顺序对主列进行排序,然后按数字顺序对辅助列进行排序?

linux - 如何将当前正在运行的 linux 进程置于后台?

delphi - 在 Delphi 2010 或更高版本中获取文件的大小?