.tar.gz 文件有两个扩展名而不是一个的原因是什么?

.tar.gz 文件有两个扩展名而不是一个的原因是什么?

据我所知,这种类型的文件就像 RAR 文件一样,是一种存档。为什么没有简单的 .targz 扩展名?是否有多个程序正在创建此类文件,并且每个程序都将其扩展名添加到生成的文件中?

还有其他与此类型文件等效的文件吗?这是我迄今为止看到的唯一的“双扩展名”。还有其他类似的文件吗?

答案1

.tar.gz 文件有两个扩展名而不是一个的原因是什么?据我所知,这种类型的文件就像 RAR 文件一样是一个存档。

不完全是。在过去,当 CPU 时间非常昂贵时,档案通常不压缩或使用磁带驱动器上的压缩硬件。通常用于此目的的工具是应收账韭菜。

与名称所暗示的不同,它可以将档案写入任何文件(在 Un*x 上,磁带驱动器就像一个文件)。因此,创建非压缩档案很容易。

如果您想要压缩它,那么您可以先创建档案(包含其所有文件和文件夹),然后使用类似 的命令压缩您的 archive.tar compress。压缩会添加 .Z 后缀,这样您就会得到一个具有两个扩展名的文件。(archive.tar.Z)。

随着时间的推移,compress 被 gzip(和 .gz 扩展名)取代,并且许多版本的 tar 都可以进行这种压缩。

Rar(以及 arj、lha、zip 等)更加现代,可以就地压缩文件。在这种情况下,您使用一个程序,并获得一个扩展名。但对于 tar,扩展名和创建整个存档然后压缩整个存档是历史的结果。

答案2

因为它是一个tar用 压缩的文件gzip

制作方法是:tar a archive.tar dir/myfile

然后,默认gzip archive.tar生成。tar.gz

在过去的 DOS 时代,扩展名是.tgz

答案3

它是从旧 *Nix 时代遗留下来的。.TAR 是一种tape archive。“Tarballing”将多个文件和/或文件夹创建一个文件,这使得将它们移动到磁带更加高效。直到后来,压缩这些文件才成为标准。因此有了 .tar.gz。

答案4

tar代表 tarball 和档案(因此)(将多个文件合并为一个),gz代表 gunzip 和压缩(或者拉链)(减小文件大小)。


另一种压缩方法(Gunzip 的替代方法)是Bzip2使用不同的算法进行压缩。这意味着您也可能遇到.tar.bz2(甚至是其连接形式)。.tbz

相关内容