
スクリプトを実行し、その出力を MD5 ハッシュとして currenthash.log というファイルに保存する crontab エントリがあります。
しかし、MD5 チェックサムが変更された場合に changedhash.log などの新しいファイルを作成するという要件を満たすことができません。これは cronjob またはスクリプト自体で実行できるものでしょうか?
答え1
答え2
古いハッシュをどこかに保存し、それを新しいハッシュと比較する必要があります。次のようになります:
#!/bin/sh
file=/path/to/file
hashfile=/path/to/stored/hash
newhash=$(md5sum "$file")
oldhash=$(cat "$hashfile")
if [ "$newhash" != "$oldhash" ]; then
echo it changed...
fi
echo "$newhash" > "$hashfile"