GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Kann ein Bash-Skript mit einer Datei verknüpft werden?

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...

Linux
  1. Warum erkennt das Bash-Skript keine Aliase?

  2. Bash-Skript zum Entfernen der ältesten Datei aus einem Ordner?

  3. Wie überprüfe ich die Teilzeichenfolge in Shell Script Bash?

  4. Standardeingabe dynamisch in einem Bash-Skript umleiten

  5. Bash-Skript:schlechter Interpreter

35 Bash-Skriptbeispiele

Vergleichen Sie md5-Summen im Bash-Skript

Wie kann ich mein Bash-Skript auf älteren Bash-Versionen testen?

Kann eine .sh-Datei Malware sein?

Bash-Schleife zum Entpacken von passwortgeschützten Dateien

Bestimmen Sie, ob das Dateisystem oder die Partition RO oder RW über Bash Script gemountet ist?