小编Sop*_*uin的帖子

如何在python中创建为相同内容保留相同md5哈希的存档?

正如本文https://medium.com/@mpreziuso/is-gzip-deterministic-26c81bfd0a49 中所解释的,两个 .tar.gz 文件的 md5 是完全相同的一组文件的压缩可以不同。例如,这是因为它在压缩文件的标题中包含时间戳。

在文章中提出了 3 个解决方案,我希望使用第一个解决方案:

我们可以在 gzip 中使用 -n 标志,这将使 gzip 省略文件头中的时间戳和文件名;

这个解决方案效果很好:

tar -c ./bin |gzip -n >one.tar.gz
tar -c ./bin |gzip -n >two.tar.gz
md5sum one.tgz two.tgz
Run Code Online (Sandbox Code Playgroud)

尽管如此,我不知道在 python 中做这件事的好方法是什么。有没有办法用 tarfile(https://docs.python.org/2/library/tarfile.html)来做到这一点?

gzip tar md5sum python-2.7

4
推荐指数
2
解决办法
1531
查看次数

标签 统计

gzip ×1

md5sum ×1

python-2.7 ×1

tar ×1