md5sumを使用してスクリプト内のファイルを検証する


15

を使用してファイルを確認したいmd5sum -c file.md5。私は手でそれを行うことができますが、スクリプトで有効性を確認する方法がわかりません。

回答:


25

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 --status -c file.md5 && echo OK残念ながら、不足しているファイルや余分なファイルをチェックしません
Erik Martino

1
@Erikのバージョンは何md5sumですか?私がチェックしたシステムmd5sum --status -c file.md5 && echo OKfile.md5は、リストされているファイルが欠落している場合、欠落しているファイルに関しては失敗します(「OK」は出力されません)。余分なファイルについては、余分なファイルについてmd5sum -c文句を言うことはありません。指定されたチェックサムファイルにリストされているファイルのみをチェックします。
スティーブンキット

1
md5sum --status -c file.md5 && echo OK収穫md5sum: stat 'foo': No such file or directoryOKMAC
エリックマルティーノ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.