解压后的文件夹是否会覆盖或追加原始文件夹的内容?

解压后的文件夹是否会覆盖或追加原始文件夹的内容?

我有一个x.tar.gz备份,其中包含以下内容:

.htaccess
a.html
b.html
c.html
x.html

我还有一个./x已经存在的目录,其中包含以下内容:

.htaccess
a.html
b.html
c.html
y.html

现在,如果我将tar xzftar 文件放在同一位置,该目录的内容是什么./x

答案1

是的,它(至少 tar 程序)将覆盖现有文件(它不会附加任何内容):

$ mkdir x
$ echo hello >x/file
$ tar cvfz x.tar.gz x
x/
x/file
$ echo world >x/file
$ tar xvfz x.tar.gz
x/
x/file
$ cat x/file
hello

由于您已经重写了问题,答案是现有文件 .htaccess、a.html、b.html、c.html 将替换为 x.tar.gz 中的版本。

现有文件 y.html 将不会被触及。

答案2

您应该使用命令--confirmation中的选项tar。例如:

$> tar xvf --confirmation x.tar.gz

相关内容