首页 文章

7zip从相同的输入产生不同的输出

提问于
浏览
1

我正在使用命令行7zip压缩文件夹的内容(在Windows中),因此:

7za a myzip.zip * -tzip -r

我发现两次运行完全相同的命令行将产生两个不同的ZIP文件 - 它们具有相同的大小但是如果你运行二进制比较(即fc / b file1.zip file2.zip)它们是不同的 . 更复杂的是,如果你快速连续制造两个拉链,那么它们是相同的 . 但如果你在不同的日子里做这些事情或者隔着几个小时他们不这样做 .

我认为ZIP文件中有一个日期/时间戳,但我在7zip网站上找不到任何东西来确认 .

假设我是对的,有谁知道如何压制日期/时间?或者是其他导致二进制文件不同的东西?

1 回答

  • 2

    7-zip的开关 -m 带参数 tc ,如果未在命令行中指定,则默认值为 on .

    使用 -mtc=on 存储在NTFS分区上的文件的所有3个日期都存储在存档中:

    • 最后修改时间,

    • 创作时间,也是

    • 上次访问时间 .

    请参阅7-zip帮助页面, Headers 为-m (Set compression Method) switch .

    文件的最后访问时间很可能是归档文件之间差异的原因 .

    您必须附加 -mtc=off 以避免在归档文件中存储NTFS时间戳 .

相关问题