用于修复损坏的 zip 文件的终端工具 (linux)

cup*_*kob 67 linux zip terminal repair

我有一个损坏的 zip 文件。我试图修复它

zip -F file.zip
Run Code Online (Sandbox Code Playgroud)

zip -FF file.zip
Run Code Online (Sandbox Code Playgroud)

但没有成功。Linux下有没有其他终端工具可以修复?

小智 109

尝试这个

zip -FF Corrupted.zip --out New.zip
Run Code Online (Sandbox Code Playgroud)

这将扫描损坏的 zip 存档并制作一个新的 zip 存档以消除错误。

因此,您将获得一个新的 zip 文件。然后只需运行此命令。

unzip New.zip
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助。

  • 感谢您的回答。这样做并没有真正给我一个有效的 zip 文件,在新的 zip 文件上再次运行命令确实可以解决问题。这是一个绝望的举动,没想到它奏效了。 (9认同)
  • 在 Ubuntu 20.04 LTS 上运行良好~ 上下文:我的 zip 是在 Windows 10 上创建的,上传到 OneDrive,并在 Ubuntu 中下载。 Zip 在 Windows 上工作,但在 Ubuntu 上不行,但答案解决了问题。 (2认同)

Gra*_*eme 22

刚刚在我对类似问题的回答中引用了这个问题 - Linux Mint 12 - how to open a .zip file in terminal

值得在此处添加 zip 手册目前关于 -F 和 -FF 之间区别的内容:

如果存档没有太多损坏,单个 -F 更可靠,因此请先尝试此选项。

所以第一次尝试是:

zip -F broken.zip --out fixed.zip
unzip fixed.zip
Run Code Online (Sandbox Code Playgroud)

如果这不起作用:

zip -FF broken.zip --out fixed.zip
unzip fixed.zip
Run Code Online (Sandbox Code Playgroud)


H. *_*ich 12

zip -F file.zip我最近遇到了一个既不能修复也无法修复的.zip 文件zip -FF file.zip。然而,

7z x file.zip
Run Code Online (Sandbox Code Playgroud)

能够提取所有文件。因此,尝试p7zip可能是一个好主意。如果需要,您可以将提取的文件打包到新的存档中。


小智 5

不过,我不知道有哪个程序可以更好地修复存档。

你可以尝试

unzip -vt file.zip
Run Code Online (Sandbox Code Playgroud)

只是看看您是否可以安全地提取某些文件,或者找出存档中的哪些文件已损坏。

  • 感谢您的提示,但我得到与“zip -F”相同的结果:( (2认同)

Joh*_*n T 5

DiskInternals ZIP Repair在 Wine 下完美运行,它在过去拯救了我。

  • 您也可以使用 7-Zip 从安装程序中提取实际的可执行文件。奇迹般有效。 (3认同)