【发布时间】:2013-08-06 23:42:06
【问题描述】:
我指的是How can you concatenate two huge files with very little spare disk space?
我正在执行以下操作:
- 分配组合大小的稀疏文件。
- 将第二个文件末尾的 100Mb 复制到新文件的末尾。
- 截断第二个文件末尾的 100Mb
- 循环 2&3 直到完成第二个文件(将 2. 修改到目标文件中的正确位置)。
- 执行 2&3&4,但使用第一个文件。
我想知道是否有人能够在 linux 中“截断”给定文件?截断是按文件大小进行的,例如,如果文件是 10GB,我想截断文件的前 100MB,并留下剩余的 9.9GB。有人可以帮忙吗?
谢谢
【问题讨论】:
-
你用谷歌搜索
Linux file truncate吗?它会给你很好的答案! -
How do I remove the first 300 million lines from a 700 GB txt file on a system with 1 TB max disk space? on unix.SE 指出您可以在适当的位置使用
dd(conv=notrunc) 在截断之前复制文件中较早的数据,在没有额外磁盘空间的情况下完成工作需要。但是,作为将数据从一个文件的开头转移到另一个文件的结尾的重复过程的一部分,这太可怕了。