我有一个名为 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
无需解压文件并重新打包。我怎样才能做到这一点?
即使您无法重命名 tar 存档中的文件,您也可以在提取文件时使用 sed 表达式动态重命名它们。焦油选项是--transform [sed-expression]。
--transform [sed-expression]
需要在重命名文件之前提取它们。当文件位于 tgz 中时,它们将受到保护,不会被更改。
或 tardy 等工具传输 tar 文件来编辑其成员的名称。它们对原始 tar 数据进行操作,因此您也需要通过 gunzip/
gunzip
gzip
< original.tar.gz gunzip | tarcust OPTIONS GO HERE | gzip > new.tar.gz