所以我只是归档了一个电子邮件提交作业,教师要求他使用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,所以我并不熟悉使用不同扩展的内容。显然,我已经找到了获得所需功能的方法,但是就像所有修补匠一样,我很好奇。
你说什么?
答案 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}