GNU/Linux >> Znalost Linux >  >> Linux

Může být Bash skript připojen k souboru?

Chci, aby skript uspal, pokud není určitý soubor upraven/smazán (nebo soubor vytvořený v určitém adresáři nebo …). Lze toho dosáhnout nějakým elegantním způsobem? Nejjednodušší věc, která mě napadá, je smyčka, která nějakou dobu spí, než znovu zkontroluje stav, ale možná existuje elegantnější způsob?

Přijatá odpověď:

V linuxu můžete použít jádro inotify Vlastnosti. Nástroje pro skriptování naleznete zde:inotify-tools.

Příklad použití z 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. Proč skript Bash nerozpozná aliasy?

  2. Bash Script:Zkontrolujte, zda je soubor textovým souborem?

  3. Spuštění souboru skriptu přes Ssh přes Sudo?

  1. Jak zkontrolovat podřetězec v Shell Script Bash?

  2. Přesměrujte standardní vstup dynamicky v bash skriptu

  3. Bash skript:špatný interpret

  1. bash skript připojí text k prvnímu řádku souboru

  2. Jak mohu otestovat svůj Bash skript na starších verzích Bash?

  3. Bash smyčka rozbalte skript zaheslovaného souboru