哪种文件夹到文件方法压缩效果最好?zip vs tar.gz vs tar.bz2 vs tar

哪种文件夹到文件方法压缩效果最好?zip vs tar.gz vs tar.bz2 vs tar

我正在尝试使用脚本下载大型 Gitlab 存储库,Gitlab 提供了ziptar.gz和选项tar.bz2tar我想选择具有最小的文件大小。

这些扩展/方法中的一个是否可以保证比另一个小?

答案1

首先;tar它不以任何方式压缩,而是存储原始文件和相关元数据(文件名、标志、校验和等)。
不过,您可以从多个压缩器中选择一个来通过管道传输 tar 存档;请参见下文。如名称扩展名所示,tar.gz已通过管道传输gzip,并tar.bz2通过管道传输bzip2

最新版本的压缩机将是最有效的。不过最终的差异可能不会太大。

实际使用的数据和压缩机设置可能会产生较大的差异。

$ zip --version
版权所有 (c) 1990-2008 Info-ZIP - 输入“zip“-L””获取软件许可证。
这是由 Info-ZIP 发布的 Zip 3.0(2008 年 7 月 5 日)。
...

$ gzip --版本
gzip 1.10
版权所有 (C) 2018 自由软件基金会,Inc.
...

$ bzip2——版本
bzip2,一款块排序文件压缩器。版本 1.0.8,2019 年 7 月 13 日。
   
   版权所有 (C) 1996-2019,作者:Julian Seward。

进而tar

$ tar--version
tar(GNU tar)1.30

...
$ tar--help
用法:tar [选项...] [文件]...
GNU 'tar' 将许多文件保存到单个磁带或磁盘档案中,并且可以
从档案中恢复单个文件。

...

压缩选项:

  -a, --auto-compress 使用档案后缀来确定压缩
                             程序
  -I,–use-compress-program = PROG
                             通过 PROG 过滤(必须接受 -d)
  -j, --bzip2 通过 bzip2 过滤档案
  -J, --xz 通过 xz 过滤档案
      --lzip 通过 lzip 过滤档案
      --lzma 通过 xz 过滤档案
      --lzop 通过 lzop 过滤档案
      --no-auto-compress 不使用档案后缀来确定
                             压缩程序
  -z, --gzip, --gunzip, --ungzip 通过 gzip 过滤档案
      --zstd 通过 zstd 过滤档案
  -Z, --compress, --unpress 通过压缩过滤档案

相关内容