fswatch: una herramienta para monitorizar cambios en ficheros
La herramienta fswatch es libre y de código abierto, además de ser multiplataforma al poderse instalar en numerosos sistemas operativos como GNU/Linux, Solaris, BSDs, Mac OS, e incluso en Microsoft Windows. Es una sencilla pero potente herramienta que puede monitorizar y alertar de cambios en directorios y ficheros cuando éstos sean modificados. En el caso de la versión para Linux, ésta se basa en inotify, un subsistema del kernel que reporta sobre cambios de ficheros.
Desgraciadamente el paquete no está incluido por defecto en ningún repositorio de ninguna distribución, así que tendrás que descargarlo, compilarlo e instalarlo de forma manual si quieres tener esta fantástica herramienta en tu sistema. Por supuesto, para ello deberás tener las Development Tools instaladas en tu distribución Linux, que por lo general se encuentran en la mayoría de distros, así que esto no sería ningún problema para ti seguro.
fswatch puede monitorizar en periodos de inactividad, personalizar el formato de grabación de eventos, usar filtros usando expresiones regulares para el comando, monitorización recursiva de directorios, etc. Pues bien, para instalarlo deberás hacer lo siguiente:
tar -zxvf fswatch-1.9.3.tar.gz
cd fswatch-1.9.3/
./configure
make
sudo make install
sudo ldconfig
Por cierto, el último comando es necesario para refrescar los enlaces y cache de bibliotecas, de lo contrario nos encontraríamos con un error tipo:
fswatch: error while loading shared libraries: libfswatch.so.6: cannot open shared object file: No such file or directory.
Ahora ya lo tienes instalado, un puedes usarlo. Te aconsejo que consultes el manual, pero la sintaxis básica es:
1 |
fswatch [opciones] /rutas/a/monitorizar |
Por ejemplo, para monitorizar el directorio personal:
1 |
fswatch /home/isaac |
Además, como verás en el manual dispone de multitud de opciones interesantes para modificar su comportamiento… Espero que te haya gustado y te sirva de ayuda.