Aback ZIP
本地处理
基础5 min read

ZIP 与 TAR:有什么区别?

TAR 打包文件但不压缩;ZIP 既打包又压缩。了解各自适用的场景。

ZIP 和 TAR 都将多个文件打包成一个压缩包,但工作原理不同。TAR 只是将文件串联起来而不压缩。ZIP 在打包的同时压缩每个条目。这一个区别解释了大部分实际差异。

TAR 的作用

TAR 是磁带归档(tape archive)的缩写,设计用于将文件写入顺序存储介质。它用描述每个文件的文件头将文件依次存储,并且不压缩任何内容。

ZIP 的作用

ZIP 将文件打包并以单一格式压缩。每个文件单独压缩,然后压缩包末尾的中央目录描述每个条目。

主要区别

  • 压缩:ZIP 默认压缩。单独的 TAR 不压缩。
  • 随机访问:ZIP 条目可以单独读取。TAR 通常需要从头扫描。
  • 平台:ZIP 在 Windows 和 macOS 上是原生的。TAR 是 Linux 和 macOS 终端的原生格式。
  • 元数据:TAR 更忠实地保留 Unix 权限。ZIP 保留 DOS 风格的属性。
  • 流式处理:TAR 可以作为流创建,因此在备份和管道中很受欢迎。

应该使用哪个?

要与任何设备上的人分享文件,ZIP 是实用的选择,因为它处处受支持,并且在打包的同时进行压缩。对于 Unix 风格的工作流、备份和软件分发,TAR 加 gzip 压缩是长期以来的惯例。

Frequently asked questions

.tar.gz 比 .zip 小吗?

有时。gzip 将整个流作为一个整体压缩,而 ZIP 分别压缩每个文件。对于许多小文件,TAR 加 gzip 可能压缩得略好一些。

Windows 可以打开 TAR 文件吗?

现代 Windows 内置支持 .tar 和 .tar.gz 文件,macOS 也可以打开。ZIP 仍然是最具普遍兼容性的选择。