Coda più file di registro

3

Ho un'applicazione che genera nuovi file di registro ogni volta che viene eseguita. Vanno tutti in una cartella, con nomi di file come questo, e il prossimo log non viene avviato fino a quando quello attuale non è finito.

Log-20140122102407.txt
Log-20140122102739.txt
Log-20140122103640.txt
Log-20140122162121.txt
Log-20140122163145.txt

Voglio monitorare l'avanzamento corrente in una finestra di terminale come tail -f ma che non funzionerà con più file. Ho sentito parlare di multitasking, ma non so come usarlo, e non voglio che la mia finestra terminale divida in più sezioni.

    
posta Elliott 23.01.2014 - 19:57
fonte

1 risposta

5

coda

tail può tail più file . L'articolo di Donovan Bray spiega di più, tail: può codificare più file contemporaneamente, chi lo sapeva? e altri trucchi di coda.

Per accodare più file, passa in uno schema di file:

tail -f Log-*

multtail

Puoi chiedere a multitail di combinare l'output di più file. La pagina di esempi contiene approcci e suggerimenti utili.

Questo comando combina e calcola due registri:

multitail /var/log/apache/access.log -I /var/log/apache/error.log

Se devi mettere in coda tutti i registri in una cartella, compresi quelli attivamente creati, utilizza il flag -q :

multitail -q 'test*'

Questo codificherà qualsiasi file che corrisponda al modello test* , compresi quelli che appaiono dopo che il comando è stato emesso. Grazie a @ folkert-van-heusden per questo suggerimento e la correzione del codice.

Se hai installato homebrew , puoi installare multitail utilizzando il comando Terminal.app:

brew install multitail

Vedi anche:

risposta data 23.01.2014 - 20:11
fonte

Leggi altre domande sui tag