Tar 不压缩* - 它是“磁带存档”并且纯粹是为了序列化数据而存在 - 传统上是到磁带设备。
它序列化一个目录结构,包括权限和文件内容。
gzip
不保留结构,只是在“文件”基础上进行压缩——这就是为什么你倾向于得到.tar.gz
——它是一个序列化的结构,然后被压缩。
我不知道你为什么会得到.zip.tar
,因为它zip
确实支持目录结构、权限和压缩。这样做似乎在很大程度上是荒谬的。
* 较新版本的tar
包含z
要压缩的标志 - 这不是原始规范的一部分。所以你会tar cvf - ./path_to_tar | gzip -c > file.tar.gz