"unzip" 명령을 거치지 않고 Linux에서 파일의 압축을 풀 수 있는 방법이 있습니까?

"unzip" 명령을 거치지 않고 Linux에서 파일의 압축을 풀 수 있는 방법이 있습니까?

명령을 전달하지 않고 Linux에서 파일의 압축을 풀 수 있는 방법이 있습니까 unzip?

일시적으로 소프트웨어 unzip나 압축 해제 프로그램을 설치할 수 없으며 우리가 만든 스크립트에서 일부 파일의 압축을 풀어야 합니다.

여러 파일이 포함된 ZIP 파일에 이 명령을 사용 했지만 jar -xf file.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 Extractor는 Linux 컴퓨터뿐만 아니라 Windows 및 Mac에서도 작동합니다.)

그런 다음 호환되는 압축기를 사용하여 파일을 다시 압축하거나 추출된 패키지를 다시 복사하십시오. 파일 전송 도구는 거의 모든 플랫폼에서 사용할 수 있습니다.

답변2

jar 파일이 어떤 방식으로든 손상된 것 같습니다.

unzip서버에서 사용할 수 있도록 하려면 압축이 풀린 패키지를 다른 서버에 설치한 다음 /usr/bin/unzip해당 서버에 scp하여 /tmp/myunzip바이너리를 사용하세요.

관련 정보