如何在放置在 tar 存档中的文件之前添加目录?

ein*_*lum 9 tar directory-structure

我想焦油文件foobar成tar归档archive.tar,但我希望他们能够出现在归档中,为目录内bazdir。因此,当我在某个地方解压时,我想bazdir被创造,foobar在其中被创造。

我怎样才能做到这一点?

这将是相反的:

/sf/ask/65798771/

创建平面 tar 存档:忽略所有父母添加文件夹时

Tig*_*ger 16

您可以使用该--transform选项。例如:

touch foo bar
tar cf archive.tar foo bar --transform 's,^,bazdir/,'
tar tvf archive.tar 
-rw-r--r-- tigger/tigger     0 2017-10-11 19:32 bazdir/foo
-rw-r--r-- tigger/tigger     0 2017-10-11 19:32 bazdir/bar
Run Code Online (Sandbox Code Playgroud)

有关更多详细信息和更复杂的选项,请参阅如何使用 tar 创建公共基本文件夹以及如何重命名文件夹?- 在姐妹网站上,询问 ubuntu。

  • 请注意,--transform 不适用于 macOS tar。 (4认同)