tar.gz 파일을 추출하면 "tar 아카이브처럼 보이지 않습니다."


29

tar.gz 파일이 있는데 터미널을 사용하여 추출하고 싶습니다. 나는 다음과 같은 명령을 사용 : tar tvzf ldtp_3.5.0.orig.tar.gztar -xvzf ldtp_3.5.0.orig.tar.gz. 그러나 두 파일 모두 동일한 결과를 얻습니다.

tar: This does not look like a tar archive
tar: Skipping to next header
tar: Exiting with failure status due to previous errors

파일 명령의 출력은 gzip 파일을 보여줍니다.

$ file ldtp_3.5.0.orig.tar.gz 
ldtp_3.5.0.orig.tar.gz: gzip compressed data, from Unix

마우스 오른쪽 버튼 클릭-> 추출을 사용하여 추출 할 수 있지만 터미널을 사용하여 추출하고 싶습니다. 누구든지 그 방법을 말해 줄 수 있습니까?

답변:


37

압축을 풀 수 있다는 사실과 함께 나타나는 오류를 보면 파일이 진짜 TAR / Gzip 아카이브이지만 Gzip 이후에 즉각적인 TAR이 생성되지 않았 음을 나타냅니다.

즉, 웹 서버에서이 파일을 다운로드하면 서버 수준의 웹 콘텐츠에 Gzip 압축이 적용되어 콘텐츠 다운로드 속도가 향상되는 경우가 있습니다. 그러나 이와 같이 이미 압축 된 내용을 무시하도록 서버에서 올바르게 설정하지 않으면 실수로 Gzip 파일을 두 배로 늘릴 수 있습니다.

이를 염두에두고 명령 줄에서 단순히 압축을 풀면 어떻게되는지 확인할 수 있습니다. 다음과 같은 명령을 사용하십시오.

gzip -d ldtp_3.5.0.orig.tar.gz

결과 파일이 무엇인지 확인하십시오. 이 명령을 실행 한 후 재미있는 느낌 ldtp_3.5.0.orig.tar이 듭니다. 디렉토리에 a 가 아니라 소스와 같은 이름의 파일이 표시됩니다 ldtp_3.5.0.orig.tar.gz. 이 경우에는 진정한 더블 지퍼입니다. 따라서이 시점에서 (Gzip 초기 압축 해제 후) 다음 tar과 같은 명령을 실행할 수 있습니다 .

tar -xvzf ldtp_3.5.0.orig.tar.gz

이제 전체 TAR 아카이브를 올바르게 압축 해제해야합니다.

이 두 단계의 과정과 비슷한 일을하는 또 다른 방법은 파이프의 출력 gziptar이 같은 :

gzip -dc ldtp_3.5.0.orig.tar.gz | tar -xvzf -

c에서이 gzip뿐만 아니라 -명령의 끝에가 핵심이다 :

  • c에 대한 옵션을 gzip말할 것이다 gzip표준 출력 스트림에 압축을.
  • -의 마지막 tar명령 수단에 따라서 상기 결합 ". 표준 입력을 사용하여" -c으로 gzip부터 파이프에 파이프는 표준 출력 걸릴 스트림 gzip및 표준 입력이 연결 tar.

1
나는 첫 번째 명령을 시도 gzip -d ldtp_3.5.0.orig.tar.gz했고 .tar파일을 (이상하게) 얻었습니다 . 그러나 시도했을 때 다음과 tar -xvf ldtp_3.5.0.orig.tar같은 오류가 발생했습니다. tar: v: Cannot open: No such file or directory tar: Error is not recoverable: exiting now
TheRookierLearner

@TheRookierLearner 그런 다음 무엇을 당신이 할 것 인 경우에 발생하는 gzip -d ldtp_3.5.0.orig.tarldtp_3.5.0.orig.tar?
JakeGould

나는 gzip -d ldtp_3.5.0.orig.tar.gz메시지를 받았습니다 gzip: ldtp_3.5.0.orig.tar: unknown suffix -- ignored gzip: on.gz: No such file or directory gzip: the.gz: No such file or directory gzip: ldtp_3.5.0.orig.tar: unknown suffix -- ignored . 이 후 나는 시도 tar -xvzf ldtp_3.5.0.orig.tar하고 작동했습니다! 정말 감사합니다!
TheRookierLearner
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.