更改 tar.gz 文件中的根文件夹名称

更改 tar.gz 文件中的根文件夹名称

我有一个 tar.gz 文件,具体来说:http://download.oracle.com/otn-pub/java/jdk/8u20-b26/jdk-8u20-linux-x64.tar.gz我将下载这个,修改它,然后把它粘贴到我自己的存储库中。

我希望更改解压的根目录的名称,而无需实际解压、更改,然后使用单独的命令再次手动压缩。这样以后解压它的任何人都会使用我指定的文件夹名称。

我知道我可以使用该--transform选项,但那是不是我想要的是,我不希望我的用户必须指定这个选项。

这可能吗?

如果没有,是否有一个单行程序可以进行提取,更改和压缩,而不会改变权限或结构等...

答案1

这是您的一行程序,以 ROOT 身​​份运行或使用以sudo保留权限等。

gunzip -c jdk-8u20-linux-x64.tar.gz | tar --transform=EXPRESSION xf - ; tar cf fixed.tar DIRNAME ; gzip fixed.tar

抱歉,我无法帮助您确定您想要的 EXPRESSION/DIRNAME 是什么,因为问题中的信息不够,无法为您提供帮助。

相关内容