解压大文件:错误的 zip 文件偏移量(本地头签名)

解压大文件:错误的 zip 文件偏移量(本地头签名)

我正在解压一个包含大约 300 万个单个文本文件的文件 - zip 文件本身大小约为 12 GB。它不是多部分文件 - 顺便说一下,它只是一个大型 zip 文件。我没有原始数据 - 我只有压缩文件,这意味着我无法再次尝试压缩内容(仅供您参考)。

问题是,当我unzip在某个时候

..
file #1207565:  bad zipfile offset (local header sig):  9570252890
file #1207566:  bad zipfile offset (local header sig):  9570254437
file #1207567:  bad zipfile offset (local header sig):  9570255044
file #1207568:  bad zipfile offset (local header sig):  9570256141
file #1207569:  bad zipfile offset (local header sig):  9570256786
file #1207570:  bad zipfile offset (local header sig):  9570257539
..

这似乎不会影响档案中的每个子文件夹或文件,但对于其中很多文件来说,该过程似乎失败了。

到目前为止,我很难猜测问题出在打包还是拆包上

有没有什么解决方法我可以尝试?

答案1

我遇到了同样的问题 - 一个包含大量文件的大型 zip 文件 - 解压时出错。一个可能的解决方案是使用 java 归档器。只需使用jar xvf file.zip

答案2

我只是想将评论复制到答案中,尽管我必须使用“更加努力”-FF选项才能使其发挥作用:

在线和通过手册页的建议是使用:zip -F original.zip --out fixed.zip然后尝试fixed.zip正常提取......

相关内容