我有四个使用以下命令创建的文件svndump
test.svn
test2.svn
test.svn.gz
test2.svn.gz
现在当我运行这个时
md5sum test2.svn test.svn test.svn.gz test2.svn.gz
这是输出
89fc1d097345b0255825286d9b4d64c3 test2.svn
89fc1d097345b0255825286d9b4d64c3 test.svn
8284ebb8b4f860fbb3e03e63168b9c9e test.svn.gz
ab9411efcb74a466ea8e6faea5c0af9d test2.svn.gz
所以我不明白为什么gzip
压缩文件的方式不同,是在压缩之前在某处放置时间戳吗?我遇到了类似的问题,mysqldump
因为它使用顶部的日期字段
答案1
gzip
在记录头中存储一些原始文件的元数据,包括文件修改时间和文件名(如果有)。看GZIP 文件格式规范。
因此,预计您的两个gzip
文件不相同。您可以通过传递gzip
标志来解决此问题-n
,这会阻止它在标头中包含原始文件名和时间戳。
答案2
每个 .gz 文件都有一个带有文件名的标头...尝试head test.svn.gz
并head test2.svn.gz