本地处理
基础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 仍然是最具普遍兼容性的选择。