tar.gz 파일을 추출하면 “tar 아카이브처럼 보이지 않습니다.” 싶습니다. 나는 다음과 같은 명령을

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

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



답변

압축을 풀 수 있다는 사실과 함께 나타나는 오류를 보면 파일이 진짜 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.

답변