FSWatch monitorea archivos y cambios o modificaciones en el directorio en Linux

FSWatch monitorea archivos y cambios o modificaciones en el directorio en Linux

fswatch es un monitor de cambio multiplataforma y de cambio que recibe alertas de notificación cuando el contenido de los archivos o directorios especificados se alteran o modifica.

Ejecuta cuatro tipos de monitores en diferentes sistemas operativos, como:

  1. Un monitor se compila en la API de eventos del sistema de archivos de Apple OS X.
  2. Un monitor basado en cárcel, Una interfaz de notificación presente en FreeBSD 4.1 También es compatible con muchos sistemas *BSD, OS X inclusive.
  3. Un monitor basado en la API de notificación de eventos de archivo del kernel de Solaris más sus spin-offs.
  4. Un monitor basado en inotify, un subsistema de kernel que muestra modificaciones del sistema de archivos a las aplicaciones.
  5. Un monitor basado en ReadDirectoryChangesW, una API de Windows que registra altera en un directorio.
  6. Un monitor que verifica regularmente ese estado del sistema de archivos, mantiene los tiempos de modificación del archivo en la memoria y determina manualmente los cambios del sistema de archivos (que funciona en cualquier lugar, donde se puede usar STAT).

Características de fswatch

  1. Admite varias API específicas del sistema operativo
  2. Permite monitoreo recursivo de directorio
  3. Realiza el filtrado de ruta utilizando y excluyendo expresiones regulares
  4. Admite formato de registro personalizable
  5. Además, admite eventos inactivos periódicos

Cómo instalar FSwatch en sistemas Linux

Desafortunadamente, fswatch El paquete no está disponible para instalar desde los repositorios de sistema predeterminados en cualquier distribución de Linux. La única forma de instalar la última versión de fswatch es construir a partir del Tarball de origen como se muestra en las siguientes instrucciones de instalación.

Primero toma lo último fswatch Tarball usando el siguiente comando wget e instálelo como se muestra:

$ wget https: // github.com/emcrisostomo/fswatch/comunes/descargar/1.9.3/fswatch-1.9.3.alquitrán.GZ $ TAR -XVZF FSWATCH -1.9.3.alquitrán.GZ $ CD FSWATCH-1.9.3 $ ./configurar $ make $ sudo make install 

Importante: Asegúrese de que GNU GCC (compilador C y C ++) y herramientas de desarrollo (esencial de construcción en Debian/Ubuntu) instalado en el sistema, antes de compilar FSwatch desde la fuente. Si no, instálelo usando el siguiente comando en sus respectivas distribuciones de Linux ..

# Yum Group Instalar 'Herramientas de desarrollo' [en CentOS/RHEL] # DNF Group Instalar 'Herramientas de desarrollo' [en Fedora 22+ Versiones] $ sudo apt-get install build-isSential [en Debian/Ubuntu Versiones] 

En Debian/Ubuntu distribuciones, puede recibir el siguiente error al ejecutar fswatch dominio…

FSwatch: Error al cargar bibliotecas compartidas: libfswatch.entonces.6: No se puede abrir el archivo de objeto compartido: no hay dicho archivo o directorio 

Para solucionarlo, debe ejecutar el comando a continuación, esto ayudará a actualizar los enlaces y caché a las bibliotecas dinámicas antes de poder comenzar a usar FSwatch.

$ sudo ldconfig 

¿Cómo uso FSwatch en Linux??

La sintaxis general para ejecutar fswatch es:

$ fswatch [opción] [ruta] 

En Linux, se recomienda que use el valor predeterminado inotificar monitor, puede enumerar los monitores disponibles empleando el -METRO o - listadores opción:

$ fswatch -m $ fswatch --list -monitores 
fswatch - monitores de lista

El siguiente comando le permite observar los cambios en el directorio actual (/Home/Tecmint), con eventos que se entregan a la salida estándar cada 4 segundos.

El -l o --latencia La opción le permite establecer la latencia en segundos, siendo el valor predeterminado 1 segundo.

$ fswatch -l 4 . 

El siguiente comando monitorea los cambios en el /var/log/auth.registro archivar cada 5 segundos:

$ fswatch -l 5/var/log/auth.registro 

Usando -T o --marca de tiempo La opción imprime la marca de tiempo para cada evento, para imprimir el tiempo en UTC formatear, emplear -u o --Tiempo de UTF opción. También puede formatear el tiempo usando -F o --Tiempo de formato Opción de formato:

$ fswatch - -timestamp/var/log/auth.registro 

Próximo, -X o --flags de eventos contado fswatch para imprimir las banderas del evento junto a la ruta del evento. Puedes usar -sesperador de campo de eventos opción de imprimir eventos utilizando el separador particular.

$ fswatch --events-flags ~/var/log/auth.registro 

Para imprimir el valor numérico de un evento que indica cambios en su hogar directorio y /var/log/auth.registro archivo, use -norte o --numérico Opción como se muestra a continuación:

$ fswatch -numérico ~/var/log/auth.registro 

Quizás puedas mirar a través del fswatch página del hombre para opciones e información de uso detallado:

$ hombre fswatch 

Para más información y uso, visite fswatch Repositorio de GitHub: https: // github.com/emcrisostomo/fswatch

En esta publicación, cubrimos una utilidad de línea de comando simple para ayudar a los usuarios de Linux a recibir notificaciones cuando se modifican el contenido de archivos especificados o jerarquías de directorio.

Espero que todo haya ido bien con la instalación, si ese no es el caso para usted, haga un esfuerzo para comunicarse con nosotros a través del formulario de comentarios a continuación. Además, en caso de que lo haya usado antes, es posible que desee ofrecernos algunas ideas sobre su experiencia con fswatch.