回答:
md5sum
の戻りステータスを使用できます。
if md5sum -c file.md5; then
# The MD5 sum matched
else
# The MD5 sum didn't match
fi
物事をよりクリーンにするために、サイレントに--status
するようにmd5sum
(おそらくGNUのバージョンのみ)を追加することができます:
if md5sum --status -c file.md5; then
# The MD5 sum matched
else
# The MD5 sum didn't match
fi
必要に応じて、短いフォームも同様に機能します。
md5sum --status -c file.md5 && echo OK
md5sum
ですか?私がチェックしたシステムmd5sum --status -c file.md5 && echo OK
でfile.md5
は、リストされているファイルが欠落している場合、欠落しているファイルに関しては失敗します(「OK」は出力されません)。余分なファイルについては、余分なファイルについてmd5sum -c
文句を言うことはありません。指定されたチェックサムファイルにリストされているファイルのみをチェックします。
md5sum --status -c file.md5 && echo OK
収穫md5sum: stat 'foo': No such file or directory
とOK
MAC
md5sum --status -c file.md5 && echo OK
残念ながら、不足しているファイルや余分なファイルをチェックしません