Bash:只用空行在Linux中拆分10个文件

crs*_*ino 4 linux bash split scala file

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

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

This is
one paragraph
for Scala
to parse

This is
another paragraph
for Scala
to parse

Yet another
paragraph
Run Code Online (Sandbox Code Playgroud)

等等.基本上我想把所有这些文件分成10或20个,但我必须确保一个段落在结果中没有被分成两半.有没有办法做到这一点?

谢谢!

Mar*_*Roy 5

csplit file.txt /^$/ {*}

csplit 拆分由指定模式分隔的文件.

/^$/ 匹配空行.

{*} 无限期地重复先前的模式.