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 압축 파일입니다. 내가 말할 수 없는 것은 그것이 당신이 생각하는 정확한 파일인지, 해시가 유용할 것인지입니다...