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 le inotifywait
commande pour signaler uniquement lorsqu'un fichier d'un certain type/extension est créé (ou déplacé dans le répertoire) - par ex. il devrait signaler quand n'importe quel .xml
le fichier est créé.
CE QUE J'AI ESSAYÉ :
J'ai exécuté le inotifywait --help
commande et avoir lu les options de la ligne de commande. Il a --exclude <pattern>
et --excludei <pattern>
commandes pour EXCLURE fichiers de certains types (en utilisant regEx), mais j'ai besoin d'un moyen d'INCLURE juste les fichiers d'un certain type/extension.
Réponse acceptée :
comment modifier la commande inotifywait pour signaler uniquement lorsqu'un fichier de
certain type/extension est créé
Veuillez noter qu'il s'agit de code non testé puisque je n'ai pas accès à inotify
tout de suite. Mais quelque chose comme ça devrait fonctionner :
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