2010-01-20 12 views
53

Tengo un archivo de registro en formato .csv en Linux, que se está actualizando continuamente. Quiero ver el archivo de registro a medida que se actualiza. ¿Hay algún comando de Linux para hacer eso?Ver un archivo de registro en Linux dinámicamente

+5

Esto realmente pertenece a serverfault embargo. – richo

Respuesta

11

tail -f foo.csv

91

tail -f yourlog.csv

líneas de nueva adjuntas mostrarán continuamente.

8

Por si acaso quiere monitorear múltiples archivos, hay una buena herramienta llamada multitail que le permite fusionar la salida de dos o más archivos y rastrearlos en tiempo real. Multitail también le permite navegar hacia adelante y hacia atrás en el (los) archivo (s) monitoreado (s).

+0

+1 para algo que no sea 'tail -f' –

5

tail -f y todos sus amigos son de la vieja escuela. multitail se ve mejor, pero el verdadero forma de quemar la CPU viendo sus archivos de registro es usar glTail.

0

tail -lf logfile.csv.

Si ha iniciado sesión en la GUI, puede utilizar el mousepad para ver el registro de forma dinámica.

60

Como han señalado otros, tail -f file es la solución más común. El problema es que los resultados simplemente se desplazan, y no puede regresar y buscarlos a menos que su terminal lo admita y tenga suficientes líneas almacenadas en su terminal.

Una solución menos conocida que me gusta es usar less; si escribe Shift - F mientras visualiza un archivo con less, comenzará después del final del archivo al igual que tail -f. Alternativamente, puede iniciar less con less +F para ingresar a este modo al inicio. En cualquier momento, puede escribir Ctrl - C dejar de seguir el archivo, y luego la página de arriba a abajo, búsqueda usando /, y utilizar less al igual que lo normal. Esto puede ser realmente útil si ve algo interesante en el registro, pero se desplaza fuera de la pantalla, o si desea retroceder un poco para verificar algo que podría haberse perdido. Una vez que haya terminado de buscar, pulse Shift - F nuevamente para comenzar a seguir el archivo nuevamente.

multitail parece una buena solución para seguir múltiples archivos en ventanas separadas; si visualiza varios archivos con tail -f, cada uno se intercalará entre sí (con encabezados para distinguirlos), que puede no ser la forma en que desea verlos.

tail -F (es decir el capital -F, en contraposición a minúsculas -f) es una bandera no estándar (disponible en Linux, Cygwin, MacOS X, FreeBSD y NetBSD), que funciona mejor para ver los archivos de registro, que puede girar de vez en cuando; Es común que un proceso cambie el nombre de un archivo de registro y luego cree un nuevo archivo de registro en su lugar, para evitar que un archivo de registro se vuelva demasiado grande. tail -f seguirá el archivo anterior, que ya no es el archivo de registro activo, mientras que tail -F observará la creación de un nuevo archivo y, en su lugar, comenzará a seguirlo. Si está usando less para seguir el archivo, puede usar la bandera --follow-name para hacer que less actúe de esta manera también.

(gracias a ephemient por los consejos sobre less +F y less --follow-name)

+3

' less + F' entrará automáticamente en el modo follow-tail, y 'less --seguir-name' actuará más como' tail -F'. Encuentro esto bastante útil :-) – ephemient

+0

Ah, gracias. No estaba al tanto de los interruptores de línea de comando. –

+2

Bonificación: si busca ('/') algo en menos, y luego ingresa al modo cola ('F'), resaltará las coincidencias en las líneas entrantes. –

0

vsConsole FileView puede ayudar si lo prefiere para monitorear sus registros a través de una aplicación web. Ver la demo en http://demo.vamonossoftware.com/

Requiere ejecuta un servidor de aplicaciones Java, desplegar vsConsole a ella, y ejecutar agentes en el servidor que contiene los registros - así que supongo que es una solución de peso más pesado que lo que necesita aquí. (Es bueno para los equipos dev/pruebas que sólo quieren hacer clic en un archivo de registro para ver que en lugar de ssh, cd, cola, etc)

0
less -S '-#' 4 /var/log/logfile 

-S detendrá el molesto al ajuste de líneas.

-#4 establecerá el paso de desplazamiento horizontal en cuatro columnas, en lugar de la mitad predeterminada de la pantalla.

Presione la tecla Finalizar para actualizar.

+0

Disculpa, se olvidó de verificar si la pregunta aún estaba activa. –

Cuestiones relacionadas