我需要确定性地归档一些文件,以便在文件内容相同的情况下获得相同的归档文件。我需要这个来测试存档文件的相等性。
但是,tar 包含时间戳信息,因此即使文件内容相同,我也会得到不同的存档文件。
如何创建不包含时间戳信息的存档(使用 tar、zip 或其他文件)?
注意:我知道即使两个 tar 文件不同,我也可以忽略它们的时间戳并仅使用tar --diff或 等工具比较它们的内容tarsum。但是,我不允许使用任何其他外部工具进行比较(因为我的设置);我只能测试两个存档文件是否完全相等。
注意:我知道我可以在归档文件之前将所有文件的时间戳设置为给定值,因此它们的时间戳将是相同的。但是文件很多,我不想这样做。我只想归档这些文件,没有时间戳信息
例子:
$ mkdir copy1
$ touch copy1/file1
$ touch copy1/file2
$ sleep 60
$ mkdir copy2
$ touch copy2/file1
$ touch copy2/file2
$ ls -l copy1
total 0
-rw-r--r-- 1 david wheel 0 Oct 27 00:59 file1
-rw-r--r-- 1 david wheel 0 Oct 27 00:59 file2
$ ls -l copy2
total 0
-rw-r--r-- 1 david wheel 0 Oct 27 01:00 file1
-rw-r--r-- 1 david …Run Code Online (Sandbox Code Playgroud)