我最近需要下载 Ruby 源代码从这里并且它说“有三种格式可用”,即.tar.bz2
、.tar.gz
和.zip
。我们有什么理由需要这三种格式吗?至少在 Linux 和 OSX 上,我可以轻松使用这三种格式中的任何一种。在 Windows 上,我认为只有 zip 是内置的。这些偏好背后有什么原因吗?还是这只是一场宗教之争?
答案1
.tar.gz
文件(在占据该位置几年后仍然)是用于类 Unix 系统的最常见的存档格式。任何类 Unix 系统上的用户都可以打开这些文件而无需安装其他软件,但运行 Windows 的用户则不能。它们有时会改为使用 ,.tgz
尽管现在这种做法不太常见(开始采用这种惯例是为了绕过 Windows 文件命名限制,该限制在 Windows NT 和 Windows 95 中已被取消)。
.zip
在现代 Windows 版本上,默认情况下可访问这些文件,无需安装任何额外软件。它们通常也可在任何其他系统上使用,但在最小安装中并不总是默认包含支持。
因此,上述两种格式可以实现接近 100% 的覆盖率,即使是在新安装的系统中,没有添加额外的工具,人们也能够打开它们。
.tar.bz2
文件与 类似,.tar.gz
但使用 bzip2 格式而不是 gzip。这些文件会更小,有时甚至小得多,因此下载速度更快 - 但在 Windows 上支持较少,并且.zip
在其他操作系统的最小安装中并不总是默认支持。
这项服务为那些安装了额外实用程序的用户提供了便利(并且可能为提供商节省一点带宽),但对于小文件来说,这种差异不值得创建/提供/支持(例如在安装/构建文档中)额外格式的麻烦。
.7z
这些天来,文件也开始越来越多地被看到。这些文件是由7-zipzip
和兼容工具,并且通常比ed 或ed 档案小得多gzip
(通常也比bzip2
ed 档案小)。例如,我经常压缩 MSSQL 数据库备份以便通过基于 ADSL 的互联网连接进行传输 - 7zip 生成的文件大小往往不到标准 zip 格式生成的文件大小的一半,这在传输时间上产生了显著差异(足以弥补 7zip 压缩算法比标准 zip 算法慢得多的事实)。目前 7-zip 格式的使用并不特别普遍,因为相关工具的安装频率低于其他选项。
与 bzip2 档案一样,7-zip 档案在可用的情况下也为安装了额外实用程序的用户提供便利(并为提供商节省一点带宽),但对于小文件而言,这种差异并不值得创建/提供/支持(例如在安装/构建文档中)额外格式的麻烦。
(如果你想看到关于档案文件格式的宗教之争,短暂地进入 Usenet 或海盗(对不起“场景”)的剩余领域,并敢于提出某些东西可能比.rar
档案更合适 - 它几乎和建议 emacs 用户尝试 vim 或反之亦然一样具有煽动性)