.tar vs .tgz ...有什么区别?

时间:2013-04-24 17:07:51

标签: command-line tar

所以我只是归档了一个电子邮件提交作业,教师要求他使用tar命令创建一个.tgz文件,我用以下命令行脚本做了这个:

tar -cvf filename.tgz {main.cpp other filenames here}

存档上没有任何问题或任何问题,但当我去发送文件时,gmail阻止我说我的文件包含一个可执行文件(我假设是main.cpp?),并且出于安全原因这是不允许的

所以,我运行了相同的脚本,但这次创建了一个.tar文件,如下所示:

tar -cvf filename.tar {main.cpp filenames here}

再一次,档案很好,但现在gmail可以通过电子邮件发送档案。那么区别是什么呢?我只是为了这个目的而真正使用了tar,所以我并不熟悉使用不同扩展的内容。显然,我已经找到了获得所需功能的方法,但是就像所有修补匠一样,我很好奇。

你说什么?

1 个答案:

答案 0 :(得分:10)

绝对没有区别。文件名只是一个文件名。 通常,当您使用tgz表单时,它表示您已经压缩了tar文件(作为第二步或使用z标志):

tar zcvf filename.tgz {filenames}

tar cvf filename {filenames}
gzip -S .tgz filename
另一方面,

.tar通常表示“这是未压缩的 tar文件”:

tar cvf filename.tar {filenames}

大多数现代tar实现还支持j标志以使用bzip2压缩,因此您也可以使用:

tar jcvf filename.tar.bz2 {filenames}