【发布时间】:2011-05-03 14:37:29
【问题描述】:
这是我面临的问题:
- 我正在处理一个大小约为 100G 的文本文件的字符串。
- 我正在尝试通过将文件拆分为数百个文件来改进运行时间 较小的文件并并行处理它们。
- 最后,我将生成的文件按顺序重新组合在一起。
文件读/写时间本身需要几个小时,所以我想找到一种方法来改进以下内容:
cat file1 file2 file3 ... fileN >> newBigFile
这需要双倍的磁盘空间,因为
file1...fileN占用 100G,然后newBigFile占用另一个 100Gb,然后file1...fileN被删除。数据已经在
file1...fileN,执行cat >>会导致读取 并写下我真正需要的只是数百个文件的时间 重新出现为 1 个文件...
【问题讨论】:
-
听起来你应该使用比 Unix shell 更强大的东西。
-
我不知道我在说什么,但是否可以操纵文件记录或其他东西?因为我需要做的不是复制数据,而是将多个文件串在一起重新组合成 1?
-
已编辑的问题放入重新开放队列(现在不太自以为是)因为这个问题的答案是太棒了! 0:-)
标签: unix concatenation cat