Bash tar附加文件

时间:2011-04-14 06:51:38

标签: bash tar

如何将文件附加到tar,例如文件位于/usr/file.txt

我希望将其附加到tar var/file.txt,以便将来使用

将其提取到[tar location]/var/file.txt而不是[tar location]/usr/file.txt
tar --append --file foo.tar bar

是否有可能以这种方式将文件放入tar中,而不会在归档之前将/usr/file.txt替换为/var/file.txt

2 个答案:

答案 0 :(得分:2)

如果您正在使用GNU tar,那么有一个--transform选项,它采用类似sed的表达式作为参数:

tar --append --file foo.tar --transform='s,^usr/,var/,' /usr/file.txt

答案 1 :(得分:0)

我能想到的唯一方法是使用符号链接var/file.txt -> /usr/file.txt

mkdir var && ln -s /usr/file.txt var
tar --dereference --append --file foo.tar var