Linux: ¿alguna forma de mantener abierto un archivo de registro de actualización en vivo en la terminal?


47

Esto debe haberse hecho antes: quiero mantener un archivo de registro abierto en la terminal para poder monitorear las actualizaciones a medida que ocurren. Mis búsquedas vienen con todo menos esta situación ... Debo estar perdiendo alguna terminología o algo clave, porque la gente hace esto todo el tiempo dentro de otros programas (NetBeans o servidor de rails, por ejemplo).


44
Ah, lo he encontrado. tail -f myfile.log. Eso lo hace muy bien. Amo linux
wulftone

Respuestas:



10

De otra manera:

watch tail -n20 your.log

OK, una especie de uso tonto de watch, pero puede encontrar el watchcomando útil para otras cosas.


55
La watchopción es mejor para los archivos que serán renombrados / eliminados y recreados (ya sea por operación normal o por algo como logrotate) durante el tiempo que está viendo, de lo contrario tail -fes más eficiente.
David Spillett

66
@David: tail -Fmaneja eso.
Grawity

@grawity: ¡Gracias, aprendes algo nuevo todos los días!
David Spillett

3

Una alternativa a la respuesta de @ cYrus es:

less +F file.log

El beneficio es que lesstambién puede truncar largas líneas para usted con la -Sbandera, evitando que se envuelvan alrededor de la pantalla del terminal mientras le permite desplazarse hacia la izquierda / derecha. En lugar de tail -f file.logpasar cuto algo similar, puede simplemente:

less -S +F file.log
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.