我尝试在我的 Linux 服务器上解压缩从 dropdox 下载的 .zip 文件,但它不起作用。知道是什么导致了这个问题吗?
unzip -Z myfile.zip
Archive: myfile.zip
[myfile.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.
zipinfo: cannot find zipfile directory in one of myfile.zip or
myfile.zip, and cannot find myfile.zip.ZIP, period.
答案1
您的文件似乎已损坏,但zip
可以修复它:
从man zip
:
-F --修复 -FF --修复修复
修复 zip 存档。如果存档的某些部分丢失,但需要相当完整的中央目录,则可以使用 -F 选项。像往常一样扫描输入存档,但 zip 会忽略一些问题。生成的存档应该有效,但任何不一致的条目都将被忽略。
当在 -FF 中加倍时,将从头开始扫描存档并进行 zip 扫描以查找特殊签名,以识别存档成员之间的限制。如果存档没有太大损坏,单个 -F 更可靠,因此请先尝试此选项。
所以,你可以使用
zip -F myfile.zip -O myfile_fixed.zip
或者
zip -FF myfile.zip -O myfile_fixed.zip