
Estoy usando inotifywait en un script y me pregunto si hay alguna manera de excluir la visualización de archivos ocultos.
Parece que no puedo determinar el patrón de expresiones regulares para excluir archivos ocultos.
Respuesta1
Supongo que te refieres a nombres de archivos que comienzan con un punto ( .
), puedes ignorarlos. El problema inotifywait --exclude
es que el patrón parece coincidir con la ruta completa del archivo, por lo que deberás tenerlo en cuenta.
Entonces, si proporcionas inotifywait
los directorios foo
y bar
to watch, entonces los patrones coincidirán con nombres de archivos como foo/something
, bar/somethingelse
. Como es habitual en las expresiones regulares, debes escapar del punto.
Esto debería observar todas las creaciones en el directorio actual excepto los archivos de puntos (es una expresión regular, por lo que debemos escapar de los puntos):
inotifywait -ecreate -m --exclude '^\./\.' .
O, de manera menos específica, excluya archivos de puntos en cualquier directorio, buscando la combinación de barra y punto:
inotifywait -ecreate -m --exclude '/\.' foo bar
Eso, por supuesto, no funcionará si estás viendo un directorio con un punto inicial en alguna parte de la ruta; coincidirá con todo en ese camino.