Sí, puede ver un directorio a través de inotify sistema usando inotifywait
o inotifywatch
de las herramientas de inotify.
inotifywait
saldrá al detectar un evento. Pase la opción -r
para ver directorios recursivamente. Ejemplo:inotifywait -r mydirectory
.
También puede especificar el evento que desea ver en lugar de ver todos los eventos. Para esperar solo cambios en el contenido del archivo o directorio, use la opción -e modify
.
Esta es una mejora en la respuesta proporcionada en la pregunta. Cuando uno interrumpe el script, el proceso de ejecución debe eliminarse.
#!/bin/sh
sigint_handler()
{
kill $PID
exit
}
trap sigint_handler SIGINT
while true; do
[email protected] &
PID=$!
inotifywait -e modify -e move -e create -e delete -e attrib -r `pwd`
kill $PID
done