0

我想在一个目录及其所有子目录上测试一些潜在的破坏性代码。因此,我将其打包,然后在一个空间中从 tarball 中复制一份,这样我的代码不会意外删除我真正想要保留的任何内容。我的代码似乎可以工作,只是我注意到某些文件没有放入压缩包中。

这是我最初做的:

 tar -czf mydirectory.tar.gz directory

然后在安全的位置,我做了以下事情:

 tar -xzf mydirectory.tar.gz

diff我在存档目录和原始目录上运行了递归。这表明某些文件丢失了。

似乎任何命名的文件.__<name>__都没有记录在档案中。例如,.__quiz__.__example__

什么是tar跳过这些文件?我如何tar才能包括他们?还有哪些文件可能tar不会记录?

即使我tar详细模式运行,也没有任何消息表明事情被跳过了。

更新

我安装gnutar. 这很好用。

4

1 回答 1

0

嗯,对我来说, tar 使用此模式归档所有文件,.__<file>__除非我将模式放入-exclude=选项中。

你可以输入echo $TAR_OPTIONS你的shell,看看它是否设置?也许您为 tar 设置了一些默认选项(如上面的排除模式)。

编辑:

因此, tar 会忽略.__<name>__根据您的详细 tar 输出判断的文件。排除该模式是否可能是别名?键入alias以列出所有别名命令。

于 2013-07-02T17:57:03.337 回答