运行该命令后,我最终得到该文件/home/user/Documents/home/user/Documents/
。
tar -xzvf /tmp/file.tar.gz -C /home/user/Documents/
答案1
发生这种情况是因为您在创建档案时使用了绝对路径,并且正如您在解压档案之前所做的那样-C
,chdir(2)
您将获得从您已编辑的位置开始的绝对路径chdir(2)
。
现在,如果您想使用,您有两个选择-C
:
创建档案时使用相对路径,然后您可以
-C
像解压档案时那样使用:tar -xzvf /tmp/file.tar.gz -C /home/user/Documents/
仔细选择目的地以确保它不会覆盖任何现有内容。
将目录更改为
/
,并在存档时使用绝对路径,当然,chdir(2)
在这种情况下要非常小心地选择路径,因为这可能会替换任何现有文件:tar -xzvf /tmp/file.tar.gz -C /
根据您的示例,这会将文件放入
/home/user/Documents/
。