gz 파일의 유효성 확인

gz 파일의 유효성 확인

gz 파일의 유효성을 어떻게 확인할 수 있습니까? 파일의 해시가 없고 사용 중이지만 gzip -t출력이 반환되지 않습니다.

답변1

gzip -t명령은 파일이 무결성 테스트를 통과했는지 여부를 나타내는 종료 코드를 셸에 반환합니다.

예(스크립트):

if gzip -t file.gz; then
    echo 'file is ok'
else 
    echo 'file is corrupt'
fi

추가하면 -v실제로 메시지를 통해 결과가 보고됩니다.

예:

$ gzip -v -t file.gz
file.gz:        OK

그래서 파일은 괜찮습니다. 파일을 손상시키고( 0파일의 바이트 40에 문자를 써서) 다시 시도하십시오.

$ dd seek=40 bs=1 count=1 of=file.gz <<<"0"
1+0 records in
1+0 records out
1 bytes transferred in 0.000 secs (2028 bytes/sec)
$ gzip -v -t file.gz
file.gz:        gzip: file.gz: Inappropriate file type or format

압축과 관련된 파일의 무결성아니요파일을 보장하세요콘텐츠그것은 당신이 믿는 것입니다. 파일 공급자로부터 MD5 체크섬(또는 이와 유사한 것)이 있는 경우 파일이 유효한 gzip아카이브일 뿐만 아니라 해당 내용이 예상한 것과 같다는 추가 확인을 얻을 수 있습니다 .

답변2

gzip -t아니요가지다올바르게 gzip으로 압축된 파일인 경우 모든 출력(반환 코드 제외)

다음을 수행하려고 하면 오류가 반환됩니다.아니요gzip 압축 파일:

steamsrv@leviathan:~$ gzip -t commands.txt

gzip: commands.txt: not in gzip format

결론: 파일이 gzip으로 압축된 것이 거의 확실합니다. 내가 말할 수 없는 것은 그것이 당신이 생각하는 정확한 파일인지, 해시가 유용한 곳인지 여부입니다...

관련 정보