GNU/Linux >> Tutoriels Linux >  >> Linux

Comment utiliser Inotifywait pour surveiller un répertoire pour la création de fichiers d'une extension spécifique ?

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

Linux
  1. Comment rechercher des fichiers par taille et extension ?

  2. Comment utiliser Netcat pour transférer des fichiers sous Linux

  3. Comment utiliser Logrotate pour gérer les fichiers journaux

  4. Comment utiliser la commande 'mv' pour déplacer des fichiers sauf ceux d'un répertoire spécifique ?

  5. Comment définir les autorisations de fichier par défaut pour tous les dossiers/fichiers d'un répertoire ?

Comment utiliser la commande SCP pour transférer des fichiers en toute sécurité

Comment copier des fichiers et des répertoires sous Linux

Comment tarer des types de fichiers spécifiques (extensions) dans un répertoire

Comment supprimer des fichiers avec une extension spécifique sous Linux

Comment copier des fichiers avec une extension de fichier spécifique de manière récursive

Comment exclure une extension de fichier spécifique lors de la copie récursive de fichiers