更新相关目录中的tar档案

当我想在相对path中创build一个tar档案时,我可以这样做:

tar cf archiveName.tar -C relative/path someDirectory 

但是当我想更新档案时,这个

 tar uf archiveName.tar -C relative/path someDirectory 

给我以下错误:

 tar: someDirectory/someFile: Cannot stat: No such file or directory ... (same error for all files and dirs in someDirectory) tar: Exiting with faliure... 

我错过了什么吗?

尽pipeGNU tar的man页面没有提到,但是我想知道-C选项只能用于c (create)r (replace)操作。

Unix man page写道:

-C目录文件
对目录执行chdir(请参阅cd(1))操作,并对文件执行c(创build)或r(replace)操作。 使用短的相对path名称的文件。 如果文件是“。”,则将所有文件归档到目录中。 此选项可以使多个目录中的文件归档,这些文件与亲密的共同父项无关。

所以,你可以使用r (replace)选项:

 tar rf archiveName.tar -C relative/path someDirectory