tar提取存档删除版本

时间:2015-12-15 16:24:22

标签: bash gzip tar ziparchive

我有一个压缩的存档版本0.0.1:myarch_0.0.1.tar.gz

当我使用tar解压缩时,所有内容都会在myarch文件夹中解压缩并解压缩,并删除版本号。

ls
myarch_0.0.1.tar.gz

tar -zxvf myarch_0.0.1.tar.gz

ls
myarch/ myarch_0.0.1.tar.gz*

我希望将解压缩的文件夹命名为:myarch_0.0.1/ 如何将我的版本号保留在解压缩的文件夹名称中?

1 个答案:

答案 0 :(得分:3)

存档文件的名称和内部文件的名称通常彼此无关。如果您希望提取的目录具有某个名称和版本号,那么您必须使用这样命名的目录创建存档。

在此示例中,提取的内容是名为myarch的目录,而不是您想要的myarch_0.0.1。您可以重命名目录并重新创建存档:

mv myarch myarch_0.0.1
tar zcf myarch_0.0.1.tar.gz myarch_0.0.1

就是这样。当您解压这个新存档时,您将获得一个名为myarch_0.0.1的目录,因为这就是您放入的内容。即使您将此文件重命名为mickeymouse.tar.gz,当您解压缩它时,您仍会获得一个名为myarch_0.0.1的目录,因为这就是存档中的内容。与档案的文件名无关。