Linux - 如何重命名.tgz文件中的文件而不提取内容并再次应用tar?

时间:2016-04-27 14:48:05

标签: linux bash tar

我有一个名为test.tgz的tar文件,里面是以下文件:

tool.foo
atest.you
btest.you
ctest.you
t.you

我想将test.tgz中的文件重命名为:

0.foo
0.you
1.you
2.you
3.you

不使用提取文件并重新打包它们。我怎么能做到这一点?

2 个答案:

答案 0 :(得分:1)

即使您无法重命名 中的文件,您也可以在提取时动态地使用sed表达式重命名它们。 tar的选项是--transform [sed-expression]

答案 1 :(得分:0)

执行需要在重命名文件之前解压缩文件。当文件位于tgz中时,它们将受到保护,不会发生变化。