Je souhaite exécuter un script shell lorsqu'un fichier ou un répertoire spécifique est modifié.
Comment puis-je facilement faire ça?
Je souhaite exécuter un script shell lorsqu'un fichier ou un répertoire spécifique est modifié.
Comment puis-je facilement faire ça?
J'utilise ce script pour exécuter un script de construction sur les modifications dans une arborescence de répertoires:
#! /bin/bash
DIRECTORY_TO_OBSERVE="js" // might want to change this
function block_for_change {
inotifywait -r \
-e modify,move,create,delete \
$DIRECTORY_TO_OBSERVE
}
BUILD_SCRIPT=build.sh // might want to change this too
function build {
bash $BUILD_SCRIPT
}
build
while block_for_change; do
build
done
Utilise inotify-tools
. Consultez la page de manuel inotifywait
pour savoir comment personnaliser ce qui déclenche la construction.
Utilisez inotify-tools .
Découvrez le démon de surveillance du système de fichiers du noyau
http://freshmeat.net/projects/kfsmd/
Voici un guide pratique:
Voici une autre option: http://fileschanged.sourceforge.net/
Voir en particulier "exemple 4", qui "surveille un répertoire et archive tous les fichiers nouveaux ou modifiés".
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.