我有很多名为 xaa.gz、xab.gz、xac.gz 等的大型压缩文件。不幸的是,它们没有排序。我想做相当于以下的事情。
zcat x*|sort > largefile
split -l 1000000 largefile
然后 gzip 拆分的文件并丢弃之前制作的所有其他文件。
问题是这会产生一个巨大的未压缩文件,然后是许多较小的未压缩拆分文件,然后再压缩它们。是否可以在不制作大文件的情况下完成整个操作,并且最好在压缩之前不保存拆分文件?
我有 8 个核心,所以我也想利用它们(我没有 coreutils 8.20,所以不能利用 sort --parallel)。