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