Ich möchte, dass ein Skript in den Ruhezustand versetzt wird, es sei denn, eine bestimmte Datei wird geändert/gelöscht (oder eine Datei, die in einem bestimmten Verzeichnis erstellt wurde, oder …). Kann man das auf elegante Weise erreichen? Das Einfachste, was mir einfällt, ist eine Schleife, die einige Zeit schläft, bevor der Status erneut überprüft wird, aber vielleicht gibt es einen eleganteren Weg?
Akzeptierte Antwort:
Unter Linux können Sie das inotify
des Kernels verwenden Merkmal. Tools zum Skripting finden Sie dort:inotify-tools.
Beispielverwendung aus Wiki:
#!/bin/sh
EVENT=$(inotifywait --format '%e' ~/file1) # blocking without looping
[ $? != 0 ] && exit
[ "$EVENT" = "MODIFY" ] && echo 'file modified!'
[ "$EVENT" = "DELETE_SELF" ] && echo 'file deleted!'
# etc...