![如何修复 FreeBSD 中的“unzip:无法识别的存档格式”?](https://linux22.com/image/213168/%E5%A6%82%E4%BD%95%E4%BF%AE%E5%A4%8D%20FreeBSD%20%E4%B8%AD%E7%9A%84%E2%80%9Cunzip%EF%BC%9A%E6%97%A0%E6%B3%95%E8%AF%86%E5%88%AB%E7%9A%84%E5%AD%98%E6%A1%A3%E6%A0%BC%E5%BC%8F%E2%80%9D%EF%BC%9F%20.png)
我尝试通过 SSH/SCP 解压从另一台机器复制到 FreeBSD 的文件夹。但是,我不断收到错误,unzip: Unrecognized archive format
在我看来,在这种情况下这是没有道理的。
为什么会出现此错误?如何修复它?
额外的信息
$ ls
sw-ui-server.zip
$ unzip
Usage: unzip [-aCcfjLlnopqtuvyZ1] [-d dir] [-x pattern] [-P password] zipfile
$ unzip sw-ui-server.zip
unzip: Unrecognized archive format
正如您在上面看到的,我已确保已unzip
安装。
我还尝试检查unzip
支持哪些格式,但考虑到它被称为“解压缩”,我认为.zip
文件应该得到支持。
答案1
这个问题可能有几个答案,但我将分享我的案例中的问题所在。
我尝试解压的 ZIP 文件结果是空的。
我通过检查文件类型发现了这一点:
$ file [filename]
[filename].zip: empty
和文件大小
$ ls -lh
total 0
-rw-r--r-- 1 user user 0B Nov 8 09:08 [filename].zip
解决方案是再次执行复制,并通过重新运行确保文件不再为空ls -lh
答案2
值得注意的是,在 FreeBSD 上,您可以使用tar
以下命令来提取各种档案库档案(3)。很多时候,您不需要基本系统外部的额外工具。