Backup

Tar –absolute-names 標誌不起作用

  • June 9, 2017

我想將給定目錄中的所有內容都放入存檔中,同時還保存整個目錄佈局,因此需要高級目錄名稱。

我執行以下命令:

tar --create --gzip --recursion --file=/home/user/test_backup.tgz --directory=/home/user/opt .

但是,這只會保存目錄佈局opt

dir1
dir1/file
file1
file2

正如我從手冊中了解到的那樣,我應該使用--absolute-namesor -P,但是當我將它們添加到上面的命令時它們都不起作用。

tar --absolute-names --create --gzip --recursion --file=/home/user/test_backup.tgz --directory=/home/user/opt .

可能是什麼問題呢?

存檔中所需的目錄佈局應為:

/home/user/opt/dir1
/home/user/opt/dir1/file
/home/user/opt/file1
/home/user/opt/file2

當您使用時,--directory FOO .您會告訴tar您更改到 FOO 目錄並從那裡開始存檔。

如果你想要完整的路徑名,那麼你應該將它們指定為模式。

例如

tar -czf /home/user/test_backup.tgz /home/user/opt

然而,這會去掉/主角,所以你需要告訴tar不要這樣做:

tar --absolute-names -czf /home/user/test_backup.tgz /home/user/opt
$ tar -P -cvzf archive.tgz /path/to/dir

這將創建一個包含 的內容的存檔,/path/to/dir其完整路徑以/path/to/dir.

如果您希望保留路徑中-P的前導,則在從存檔中提取文件時也必須使用。/

引用自:https://unix.stackexchange.com/questions/370187