Tengo una aplicación que genera nuevos archivos de registro cada vez que se ejecuta. Todos van a una carpeta, con nombres de archivo como este, y el siguiente registro no se inicia hasta que finaliza el actual.
Log-20140122102407.txt
Log-20140122102739.txt
Log-20140122103640.txt
Log-20140122162121.txt
Log-20140122163145.txt
Quiero monitorear el progreso actual en una ventana de terminal, tail -f
pero eso no funcionará con varios archivos. He oído hablar de multitail, pero no sé cómo usarlo y no quiero que mi ventana de terminal se divida en varias secciones.
tail
puede rastrear varios archivos. El artículo de Donovan Bray explica más, cola: puede seguir varios archivos simultáneamente, ¿quién sabe? y otros trucos de cola.
Para seguir varios archivos, pase un patrón de archivo:
tail -f Log-*
Puede pedirle a multitail que combine la salida de varios archivos. La página de ejemplos contiene enfoques y trucos útiles.
Este comando combina y sigue dos registros:
multitail /var/log/apache/access.log -I /var/log/apache/error.log
Si necesita seguir los registros en una carpeta, incluidos los que se están creando activamente, use la -q
bandera:
multitail -q 'test*'
Esto rastreará cualquier archivo que coincida con el patrón test*
, incluidos los que aparecen después de que se haya emitido el comando. Gracias a @folkert-van-heusden por esta sugerencia y corrección de código.
Si tiene homebrew instalado, puede instalar multitail
usando el comando Terminal.app:
brew install multitail
Ver también:
Elliott
graham miln
Folkert van Heusden
Folkert van Heusden
Folkert van Heusden