GNU/Linux >> Linux Esercitazione >  >> Linux

Come utilizzare Inotifywait per guardare una directory per la creazione di file di un'estensione specifica?

Ho visto questa risposta.

Dovresti considerare l'utilizzo di inotifywait, ad esempio:

inotifywait -m /path -e create -e moved_to |
    while read path action file; do
        echo "The file '$file' appeared in directory '$path' via '$action'"
        # do something with the file
    done

La mia domanda è che lo script sopra controlla una directory per la creazione di file di qualsiasi tipo, ma come posso modificare inotifywait comando per segnalare solo quando un file di un certo tipo/estensione viene creato (o spostato nella directory) – es. dovrebbe segnalare qualsiasi .xml il file è stato creato.

COSA CHE HO PROVATO:

Ho eseguito inotifywait --help comando e aver letto le opzioni della riga di comando. Ha --exclude <pattern> e --excludei <pattern> comandi per ESCLUDI file di determinati tipi (usando regEx), ma ho bisogno di un modo per INCLUDE solo i file di un certo tipo/estensione.

Risposta accettata:

come faccio a modificare il comando inotifywait per segnalare solo quando viene creato un file di
certo tipo/estensione

Tieni presente che questo è un codice non testato poiché non ho accesso a inotify proprio adesso. Ma qualcosa di simile dovrebbe funzionare:

inotifywait -m /path -e create -e moved_to |
    while read path action file; do
        if [[ "$file" =~ .*xml$ ]]; then # Does the file end with .xml?
            echo "xml file" # If so, do your thing here!
        fi
    done

Linux
  1. Linux:come impostare le autorizzazioni file predefinite per tutte le cartelle/file in una directory?

  2. Come cercare i file per dimensione ed estensione?

  3. Come nascondere i file con un'estensione specifica?

  4. Come utilizzare Logrotate per gestire i file di registro

  5. Come si esegue il diff di una directory solo per i file di un tipo specifico?

Come utilizzare il comando SCP per trasferire file in modo sicuro

Come copiare file e directory in Linux

Come eseguire il tar di tipi di file specifici (estensioni) in una directory

Come rimuovere file con estensione specifica in Linux

Come copiare file con estensione di file specifica in modo ricorsivo

Come escludere un'estensione di file specifica durante la copia ricorsiva di file