对于大量文件,最快的压缩方法是什么?

Modified on: Mon, 11 Feb 2019 22:00:02 +0800

我需要使用大约350,000个相当小的文件压缩一个目录,总共大约100GB。我正在使用OSX,目前正在使用标准的“压缩”工具将该目录转换为.zip文件。有更快的方法吗?

作者:Spike

最佳答案

对于目录,我使用带有max-compression的tar管道传输到bzip2

一个简单的方法是,

tar cfj archive.tar.bz2 dir-to-be-archived/ 

如果您不打算从存档中取出一小组文件,这非常有用
并且只是计划在需要时随时随地提取整个事物
然而,如果你想要获得一小组文件,那就不错了。

我更喜欢将这些档案称为filename.tar.bz2,并使用'xfj'选项进行提取。

max-compression管道看起来像这样,

tar cf - dir-to-be-archived/ | bzip2 -9 - > archive.tar.bz2  
#      ^pipe tarball from here to zip-in^ into the archive file. 

注意:'bzip2'方法和更多压缩往往比'gzip'中的常规tar cfz慢。

如果您有一个快速网络并且存档将被放置在另一台机器上,则
您可以通过网络加速管道(有效地使用两台机器)。

tar cf - dir/ | ssh user@server "bzip2 -9 - > /target-path/archive.tar.bz2"  
#      ^ pipe tarball over network to zip ^ and archive on remote machine.

一些参考资料,

  1. Linux Journal:压缩工具比较,2005年7月28日

  2. gzip vs. bzip2,2003年8月26日
  3. 快速基准:Gzip vs. Bzip2 vs. LZMA,2005年5月31日< / LI>
    醇>
作者:,nik

相关问答

添加新评论