Backup
Tar –absolute-names 標誌不起作用
我想將給定目錄中的所有內容都放入存檔中,同時還保存整個目錄佈局,因此需要高級目錄名稱。
我執行以下命令:
tar --create --gzip --recursion --file=/home/user/test_backup.tgz --directory=/home/user/opt .
但是,這只會保存目錄佈局
opt
。dir1 dir1/file file1 file2
正如我從手冊中了解到的那樣,我應該使用
--absolute-names
or-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
的前導,則在從存檔中提取文件時也必須使用。/