有没有办法在linux中解压文件而不通过“unzip”命令?

有没有办法在linux中解压文件而不通过“unzip”命令?

有没有办法在Linux中不通过命令来解压文件unzip

我们暂时无法安装该软件unzip或任何解压程序,需要在创建的脚本中解压一些文件。

jar -xf file.zip在包含多个文件的 ZIP 文件中使用了该命令,但是只提取了第一个文件,并且终端中出现了以下错误,知道它可能是什么吗?

java.io.IOException: Push back buffer is full
        at java.io.PushbackInputStream.unread(PushbackInputStream.java:215)
        at java.util.zip.ZipInputStream.readEnd(ZipInputStream.java:367)
        at java.util.zip.ZipInputStream.read(ZipInputStream.java:156)
        at java.util.zip.ZipInputStream.closeEntry(ZipInputStream.java:100)
        at sun.tools.jar.Main.extractFile(Main.java:936)
        at sun.tools.jar.Main.extract(Main.java:852)
        at sun.tools.jar.Main.run(Main.java:242)
        at sun.tools.jar.Main.main(Main.java:1149)

当我运行jar tvf file.zip命令时,我能够看到里面的一切file.zip

答案1

如果无法在目标计算机上安装必要的软件,请考虑将 ZIP 文件移动到已安装必要软件的计算机。 (ZIP 提取器不仅适用于 Linux 计算机,也适用于 Windows 和 Mac。)

然后使用兼容的压缩器重新打包文件或再次将提取的包复制回来。几乎所有平台都可以使用文件传输工具。

答案2

听起来 jar 文件在某些​​方面可能已损坏。

unzip在服务器上可用,请在另一台服务器上安装解压缩包,然后 scp 到/usr/bin/unzip/tmp/myunzip问题的服务器上,然后使用该二进制文件。

相关内容