ファイルの変更を監視し、変更が検出されたときに何らかのアクションを実行するスクリプトを作成できるかどうか疑問に思います。
詳細な説明:
安いn '汚い方法:
ループstat -c %Y file
そして変更時間が変更されたときにアクションを実行します。
おそらくより良い:
Inotify cronサービスを使用して、ファイル変更イベントを監視し、アクションを実行します。
/path/to/your/file IN_MODIFY /path/to/your/script $#
スクリプトの実行をトリガーするために、incron [1]または他のinotify-stuffを見てください。
[1] http://inotify.aiken.cz/?section=incron&page=about&lang=en
inotifyはそれを行う正しい方法です。チュートリアルは、まさにこの質問のためにいくつかのLinuxForYouマガジンエディションで提供されています。
したがって、次のようなスクリプトがあります。
1)ファイルの変更時刻を確認します(統計を使用)
2)変更時刻が最後にチェックしたときよりも新しい場合は、変更されています
3)解析してアクションを実行します
4)それ以外の場合は、1分間スリープしてから、再ループします
迅速で汚い方法:
function wait_file_changed {
tail -fn0 "$1" | head -n1
}
wait_file_changed /tmp/potato