J'ai vu cette réponse .
Vous devriez envisager d'utiliser inotifywait, par exemple:
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
Ma question est que, le script ci-dessus surveille un répertoire pour la création de fichiers de tout type, mais comment puis-je modifier la inotifywait
commande pour signaler uniquement lorsqu'un fichier d'un certain type / extension est créé (ou déplacé dans le répertoire) - par exemple, il devrait signaler lorsqu'un .xml
fichier est créé.
CE QUE J'AI ESSAYÉ:
J'ai exécuté la inotifywait --help
commande et j'ai lu les options de ligne de commande. Il a --exclude <pattern>
et des --excludei <pattern>
commandes pour EXCLURE les fichiers de certains types (en utilisant regEx), mais j'ai besoin d'un moyen pour INCLURE uniquement les fichiers d'un certain type / extension.
path
ci-dessus n'est probablement pas le meilleur nom de variable si vous voulez jouer avec cette première dans un shell. Si vous l'utilisez, vous ne pourrez pas utiliser les commandes et tout, car cela vient de remplacer la normePATH
. Par conséquent, je recommande d'utiliser un autre nom de var, comme à lafpath
place. c'est-à-dire quewhile read fpath action file
toute commande standard habituellement disponible à partir de votre shell le sera toujours.