我有大约500个zip文件,我必须放在一个目录中,以便进程处理它们。
该进程在处理之前计算文件的md5哈希值。如果文件的哈希值与它所知道的哈希值相同(存储在数据库中),它将忽略zip文件并继续下一个。
每个zip文件包含两个文件:
作为测试的一部分,我需要多次处理所有zip文件。目前,为了让进程不要忽略它们,我只是在运行测试之前清除数据库中的哈希值。
有没有办法可以运行测试而无需清除记录的哈希值?我尝试重命名zip文件,但似乎没有改变哈希值。
是否有快速方法对zip文件中的文件进行更改,以便哈希值每次都更改(使用Unix或Windows中的任何工具)?
作为一个例子,如果我提取所有文件(每个文件夹在自己的文件夹中),有没有办法我可以对xml做一个小改动并重新压缩文件(假设它会更加棘手)更新excel文档)?
由于
答案 0 :(得分:2)
您可以更改zip文件的注释(-z
或--archive-comment
选项)。此注释存储在zip文件的末尾,不会更改存储在其中的文件:
md5sum test.zip # e5d3c08c0c45d1cbdd0760af0b29e8e0
echo "test at $(date)"|zip --archive-comment test.zip
md5sum test.zip # b13fd1f3b75561eec68fdfde0c26a466