Mostrar un archivo de registro de "desplazamiento"
28
A través de la línea de comando, tengo un archivo de registro que me gustaría seguir.
Lo que quiero es tener, básicamente, una tailactualización que se actualice cuando se actualice el registro haciendo que el texto se desplace hacia arriba a medida que se agreguen nuevas líneas al archivo de registro.
¿Hay algo por ahí que haga eso sin tener que escribir algún código?
-f, --follow [= {name | descriptor}] da salida a los datos agregados a medida que crece el archivo; -f, --follow y --follow = descriptor son equivalentes
Por lo tanto, si escribe:
tail -f [path_and_name_of_logfile] - verá la salida en el terminal a medida que se agrega el archivo de registro.
NB [path_and_name_of_logfile]es el parámetro, así que para dar un ejemplo:
tail -f /var/log/messages
Si se combina con la -n [number_of_lines]opción, puede iniciar la salida desde el último [número_de_líneas] en el archivo, por ejemplo
tail -n 10 -f /var/log/Xorg.0.log
Algunos programas cambiarán periódicamente su archivo de registro, moviendo el antiguo a un nuevo nombre (por ejemplo, log.0) y comenzando de nuevo.
NB logrotate hace esto para registrar archivos para otros programas que no lo hacen ellos mismos.
tail -f continuará siguiendo el archivo anterior después de cambiarle el nombre.
tail -F seguirá el archivo por su nombre, por lo que cambiará para seguir el nuevo archivo.
ambas respuestas son acertadas ... no me di cuenta de que Tail tenía esa opción. obtienes el cheque para la información adicional.
WernerCD
Por otro lado, también hay algunos scripts increíbles para colorear su registro de colas. Un ejemplo que viene a la mente es colorize.pl, y lo logras canalizándolo a través del script de colorize. por ejemplo: tail -f / var / log / messages | /home/me/colorize.pl
lazyPower
@lazyPower Nice también. Tendré que jugar con eso, aunque no creo que sea muy útil en mi situación actual.
WernerCD
18
Si bien tailes sin duda la forma habitual de hacer esto, debe tenerse en cuenta que lesstiene la misma característica y, a veces, es más útil.
Si abrió un archivo con less, puede presionar Shift+ Fpara que siga el archivo (es decir, mostrará nuevas líneas, al igual tail -fque). Puedes salir de este modo con Ctrl+C
También puede comenzar lesscon la +Fopción, en cuyo caso comenzará en ese modo. En general, +se puede usar para dar "comandos de teclado" a los lessque se ejecutará al inicio.
Usar lessesto tiene la ventaja de que puede buscar fácilmente el archivo o ver otras áreas si surge la necesidad. Con frecuencia lo he hecho con archivos de registro, por ejemplo.
Nunca escuché sobre "seguir" (más, menos, cola, gato). Es bueno saber cosas.
WernerCD
1
Convenido. Prefiero mucho menos. Ctrl-C detendrá el desplazamiento cuando detecte algo interesante, luego b para desplazarse hacia atrás o hacia adelante y / o? para buscar hacia adelante o hacia atrás. g lo llevará al inicio del archivo y G al final. Todo lo que necesitas.
tail tiene dos implementaciones para seguir y generar datos que se agregan a un archivo
siga el descriptor de archivo
seguir un archivo con un nombre determinado
Con parámetro -f, --followy --follow=descriptor, tailsigue el descriptor de archivo. Este método permite que el archivo se siga a través de un cambio de nombre, pero el seguimiento se detiene cuando se gira el archivo (se crea un nuevo archivo con un descriptor de archivo diferente).
Cuando siga los archivos rotados, use --follow=nameo el -Fparámetro que equivale a --follow=name --retry. De esa forma, se tailvolverá a abrir periódicamente el archivo para superar la posible rotación.
Hace lo mismo de colorear. Puede ver el registro desplazándose hacia abajo, pero es más fácil de leer, ya que las líneas se imprimen con colores (errores en rojo, etc.). Puedes probarlo rápidamente con algo como esto:
Si bien
tail
es sin duda la forma habitual de hacer esto, debe tenerse en cuenta queless
tiene la misma característica y, a veces, es más útil.Si abrió un archivo con
less
, puede presionar Shift+ Fpara que siga el archivo (es decir, mostrará nuevas líneas, al igualtail -f
que). Puedes salir de este modo con Ctrl+CTambién puede comenzar
less
con la+F
opción, en cuyo caso comenzará en ese modo. En general,+
se puede usar para dar "comandos de teclado" a losless
que se ejecutará al inicio.Usar
less
esto tiene la ventaja de que puede buscar fácilmente el archivo o ver otras áreas si surge la necesidad. Con frecuencia lo he hecho con archivos de registro, por ejemplo.fuente
Hace
¿Haz lo que quieras?
fuente
tail
tiene dos implementaciones para seguir y generar datos que se agregan a un archivoCon parámetro
-f
,--follow
y--follow=descriptor
,tail
sigue el descriptor de archivo. Este método permite que el archivo se siga a través de un cambio de nombre, pero el seguimiento se detiene cuando se gira el archivo (se crea un nuevo archivo con un descriptor de archivo diferente).Cuando siga los archivos rotados, use
--follow=name
o el-F
parámetro que equivale a--follow=name --retry
. De esa forma, setail
volverá a abrir periódicamente el archivo para superar la posible rotación.fuente
Creo que ccze es la herramienta adecuada para ti.
Hace lo mismo de colorear. Puede ver el registro desplazándose hacia abajo, pero es más fácil de leer, ya que las líneas se imprimen con colores (errores en rojo, etc.). Puedes probarlo rápidamente con algo como esto:
fuente