zip 확장자를 사용하여 gz 아카이브 압축 풀기

zip 확장자를 사용하여 gz 아카이브 압축 풀기

gzip 아카이브가 많지만 우편번호 확장자가 gz:***.zip이 아닙니다.

gunzip을 사용하여 압축을 풀려고 하면 오류가 unzip발생합니다.not a zip archiveunknown suffix: zip

여기서 무슨 일이 일어나고 있는 걸까요?

답변1

기본적으로 파일이 gzip 파일인지 확인하기 위해 gzip파일을 검사하는 대신 제한된 목록의 확장자를 가진 파일만 압축이 풀립니다 . :: magic의 댓글gzip.cget_suffix()

/* ========================================================================                 
 * Return a pointer to the 'z' suffix of a file name, or NULL. For all                      
 * systems, ".gz", ".z", ".Z", ".taz", ".tgz", "-gz", "-z" and "_z" are                     
 * accepted suffixes, in addition to the value of the --suffix option.                      

실제로 gzip으로 압축되었지만 gzip예상된 규칙에 따라 이름이 지정되지 않은 입력 파일을 사용하려면 다음과 같이 접미사를 명시적으로 제공하십시오.gzip매뉴얼 페이지:

-S .suf --접미사 .suf

...압축을 풀 때 접미사 목록의 시작 부분에 .suf를 추가하여 입력 파일 이름에서 출력 파일 이름을 파생시키려고 합니다.

$ gunzip -S .zip foo.zip

gzip또는 파일 이름이 표시되지 않도록 리디렉션을 사용합니다 .

$ gunzip < foo.zip > foo.txt

관련 정보