【发布时间】:2016-07-26 13:08:32
【问题描述】:
我有一个相当大的文件(超过 20GB),我想将它拆分成更小的文件,例如多个 2GB 的文件。
有一件事是我必须在特定行之前拆分:
我正在使用 Python,但如果在 shell 中有其他解决方案,例如,我准备好了。
这是大文件的样子:
bigfile.txt (20GB)
Recno:: 0
some data...
Recno:: 1
some data...
Recno:: 2
some data...
Recno:: 3
some data...
Recno:: 4
some data...
Recno:: 5
some data...
Recno:: x
some more data...
这就是我想要的:
file1.txt (2 GB +/-)
Recno::0
some data...
Recno:: 1
some data...
file2.txt (2GB +/-)
Recno:: 2
some data...
Recno:: 4
some data...
Recno:: 5
some data...
等等,等等……
谢谢!
【问题讨论】:
-
如果您向我们展示一些带有几行的小示例,显示文件将被拆分(或不拆分)的位置,将会很有用。
-
@Chris_Rands 并不是真的因为我不想用给定的一组线条而是用特定的线条来分割。仅当它超过 2Go 并且出现 Recno:: int 时。
-
@TomFenech 我在示例中添加了更多内容,如果我不够精确,请告诉我。
-
正如另一个答案所说,您可以在 bash 中使用
split -b来拆分字节