GNU/Linux >> Linux Esercitazione >  >> Linux

Uno script Bash può essere agganciato a un file?

Voglio che uno script venga sospeso a meno che un determinato file non venga modificato/eliminato (o un file creato in una determinata directory, o ...). È possibile ottenere questo risultato in modo elegante? La cosa più semplice che mi viene in mente è un loop che dorme per un po' prima di ricontrollare lo stato, ma forse c'è un modo più elegante?

Risposta accettata:

Su Linux, puoi usare inotify del kernel caratteristica. Gli strumenti per lo scripting possono essere trovati lì:inotify-tools.

Esempio di utilizzo da 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. Perché lo script Bash non riconosce gli alias?

  2. Script Bash:controlla se un file è un file di testo?

  3. Eseguire un file di script su Ssh tramite Sudo?

  4. Reindirizza l'input standard in modo dinamico in uno script bash

  5. Script Bash:pessimo interprete

35 Esempi di script Bash

lo script bash aggiunge il testo alla prima riga di un file

Confronta le somme md5 nello script bash

Come posso testare il mio script Bash su versioni precedenti di Bash?

Script Bash per rimuovere il file più vecchio da una cartella

Come grep per unicode � in uno script bash