tar和zip有什么区别?它们各自的使用场景是什么?
tar和zip有什么区别?它们各自的使用场景是什么?
tar
本身只是将文件捆绑在一起(结果称为tarball),而zip
还应用了压缩。
通常使用gzip
与tar
一起压缩生成的tarball,从而实现与zip
类似的结果。
对于相当大的存档,它们之间存在重要差异。 zip
存档是压缩文件的集合。 压缩的tarball是一个压缩的集合(未压缩的文件)。 因此,zip存档是随机访问的连续压缩项列表,而.tar.gz
是必须完全展开才能访问目录的存档。
zip
的缺点是您不能在文件之间获得压缩(因为归档中的每个文件都是独立压缩的,压缩无法利用不同文件内容的相似之处); 优点是您可以通过查看存档的特定(目标文件相关)部分来访问其中包含的任何文件(因为集合的“目录”与集合本身分开)。.tar.gz
的缺点是必须解压整个存档才能访问其中包含的文件(因为文件在tarball中); 优点是压缩可以利用文件之间的相似之处(因为它压缩整个tarball)。zip
会将文件压缩成一个目录,但是缺点是你不能跨文件压缩?.tar.gz
也是如此。这里是否有错别字? - Dillon Ryan Reddingtar.gz
是什么意思?需要解压整个文件才能访问文件吗?我可以轻松地使用tar -f myfile.tr.gz -xzv file-that-i-want-to-extract.pdf
来提取我想要的文件,它很有效。 - mariano-daniel.tar.gz
文件是经过 gzip 压缩的 tar 文件,这意味着 tar 必须解压缩 .tar.gz
文件(可能在内存中)才能获取包含所需文件的未压缩的 .tar
文件。要查看,请尝试:gunzip myfile.tar.gz
;您将获得包含所需文件的未压缩的 myfile.tar
文件(注意:gunzip 将删除原始的 myfile.tar.gz
文件,因此您可能需要先备份一份副本)。 - Attilatar
将会解压文件,而不是你;-) 但说真的,现在我明白你的意思了,我太过于字面理解,以为你是说我需要先解压再从 tar 中提取。祝你有愉快的一天! - mariano-daniel