解压错误“未找到中央目录结尾签名”

Tim*_*Tim 143 unzip

我尝试解压缩 zip 文件,但出现错误:

$ unzip COCR2_100.zip 
Archive:  COCR2_100.zip
  End-of-central-directory signature not found.  Either this file is not
  a zipfile, or it constitutes one disk of a multi-part archive.  In the
  latter case the central directory and zipfile comment will be found on
  the last disk(s) of this archive.
note:  COCR2_100.zip may be a plain executable, not an archive
unzip:  cannot find zipfile directory in one of COCR2_100.zip or
        COCR2_100.zip.zip, and cannot find COCR2_100.zip.ZIP, period.
Run Code Online (Sandbox Code Playgroud)

我用谷歌搜索但没有找到解决方案。我想知道为什么会这样以及我应该如何解决它?谢谢!

zip 文件可以从COCR2_100下载。这是一个应用程序,这里是它的网站http://users.belgacom.net/chardic/cocr2.html

我的操作系统是 10.10。

小智 207

试试这个优秀的解决方案:

jar xvf COCR2_100.zip
Run Code Online (Sandbox Code Playgroud)

脚步:

  1. 将文件拖放到终端窗口中。
  2. 使用键盘箭头导航到终端中的行首
  3. jar xvf在您的文件名前面键入,记住在文件名开头之前留有空格。
  4. 喝一杯啤酒,看着终端在提取文件时发挥它的魔力。

新文件所在的位置各不相同,但通常找到它们的最佳技巧是在 Finder 中单击您的计算机名称,它应该会在所有文件的顶部显示最近的活动。

如果jar命令不可用,您可以fastjar通过在终端中粘贴以下内容进行安装:

sudo apt-get install fastjar
Run Code Online (Sandbox Code Playgroud)

  • @EliahKagan 不是,但这个技巧有效 (10认同)
  • 赞成。谢谢:使用“zip -FF”修复 6.5Gb zip 是一件令人头疼的事:生成的“固定”存档是损坏(不完整)原始存档的完整副本。我知道 .jar 文件在内部是 zip 文件,但我从未使用 jar 可执行文件来解压 zip 档案:-) (5认同)
  • 我认为这适用于损坏(或未完全下载)的文件,因为 `jar` 实用程序在开始提取之前不会检查 `End-of-central-directory` 签名。如果情况确实如此,您可能无法提取每个文件,并且该实用程序可能会以“意外结束 ZLIB 输入流”之类的错误结尾。 (4认同)
  • 哇,这正是我要找的!def 应该是公认的答案。知道为什么会这样吗? (3认同)

小智 42

问题正是它所说的。解压缩找不到表示存档结束的代码行,因此:

  1. 存档已损坏。
  2. 它不是 .zip 存档。
  3. 存档有 1 个以上的部分,但这对我来说似乎不可能。你也应该试试另一面镜子。它对我有用。

PS 注意该程序是如何为 Windows 制作的。所以你需要 Wine(来自http://www.winehq.com或 Ubuntu 软件中心)来运行它。

  • 似乎“解压缩”不是很健壮,因此无法处理损坏(或下载不完整)的档案。 (2认同)

Cam*_*mpa 34

使用7z解压缩对我有用:

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

通过 APT 安装apt install p7zip-full


Ell*_*iew 8

错误可能是由于混合存档类型引起的:

我注意到,当使用unzip, 但在gunzip(GNU)存档上时,我会收到此错误,例如

未找到中央目录结尾签名。该文件要么不是 zip 文件,要么构成多部分存档的一张磁盘。在后一种情况下,中央目录和 zip 文件注释将在此存档的最后一个磁盘上找到。解压缩:在 create_tables.sql.gz 或 create_tables.sql.gz.zip 之一中找不到 zipfile 目录,并且找不到 create_tables.sql.gz.ZIP,期间。”

gunzip在同一存档上使用没有错误。!!


小智 6

我今天遇到了类似的问题,并且在 dd 和 gunzip 方面取得了一些成功。尝试这个:

dd if=corrupt.zip | gunzip -f > xx.csv
Run Code Online (Sandbox Code Playgroud)

在我的情况下,我仍然收到“gunzip:stdin:文件意外结束”错误,但至少我有一些输出可以查看。