Linux 서버의 dropdox에서 다운로드한 .zip 파일의 압축을 풀려고 했지만 작동하지 않습니다. 이 문제의 원인이 무엇인지 아시나요?
unzip -Z myfile.zip
Archive: myfile.zip
[myfile.zip]
End-of-central-directory signature not found. Either this file is not
a zipfile, or it constitutes one disk of a multi-part archive. In the
latter case the central directory and zipfile comment will be found on
the last disk(s) of this archive.
zipinfo: cannot find zipfile directory in one of myfile.zip or
myfile.zip, and cannot find myfile.zip.ZIP, period.
답변1
파일이 손상된 것 같지만 zip
다음 방법으로 수정할 수 있습니다.
에서 man zip
:
-F --수리 -FF --수리 수리
zip 아카이브를 복구합니다. 아카이브의 일부가 누락되었지만 상당히 완전한 중앙 디렉토리가 필요한 경우 -F 옵션을 사용할 수 있습니다. 평소대로 입력 아카이브를 스캔하지만 zip은 일부 문제를 무시합니다. 결과 아카이브는 유효해야 하지만 일치하지 않는 항목은 무시됩니다.
-FF에서 두 배로 늘리면 아카이브를 처음부터 검사하고 zip을 검사하여 아카이브 구성원 간의 제한 사항을 식별하는 특수 서명을 확인합니다. 아카이브가 너무 손상되지 않은 경우 단일 -F가 더 안정적이므로 이 옵션을 먼저 시도해 보십시오.
그래서, 당신은 사용할 수 있습니다
zip -F myfile.zip -O myfile_fixed.zip
또는
zip -FF myfile.zip -O myfile_fixed.zip