A veces, desea controlar qué información nueva se escribe en un archivo (piense en los archivos de registro) o, por cualquier motivo, desea acceder a las últimas líneas de un archivo. Bueno, hay una utilidad de línea de comandos que te permite hacer esto en Linux, y se llama tail .
En este tutorial, discutiremos los conceptos básicos del comando tail usando algunos ejemplos fáciles de entender. Pero antes de hacerlo, vale la pena mencionar que todos los ejemplos incluidos en este artículo han sido probados en Ubuntu 16.04 LTS.
Comando de cola de Linux
Como ya se mencionó, el comando tail genera la última parte de los archivos que se le proporcionan como entrada. La siguiente es su sintaxis:
cola [OPCIÓN]... [ARCHIVO]...
Y esto es lo que dice la página de manual de la herramienta al respecto:
Print the last 10 lines of each FILE to standard output. With more than one FILE, precede each with
a header giving the file name. With no FILE, or when FILE is -, read standard input.
A continuación, se muestran algunos ejemplos con estilo de preguntas y respuestas que deberían darle una mejor idea de cómo la cola el comando funciona.
P1. ¿Cómo usar la cola?
El uso básico es muy fácil:todo lo que tiene que hacer es pasar el nombre del archivo cuyas últimas 10 líneas desea que muestre la herramienta. Por ejemplo:
tail file1
Las siguientes fueron las últimas 10 líneas en el archivo 2 en mi sistema:
P2. ¿Cómo cambiar el número de líneas de huellas de cola?
Como ya sabe, el comando tail imprime 10 líneas de forma predeterminada. Sin embargo, puede cambiar este número usando la opción de línea de comando -n.
tail -n [num] [filename]
Por ejemplo:
tail -n 5 file2
P3. ¿Cómo hacer que la cola genere un número determinado de bytes?
¿Qué sucede si en lugar de líneas, desea que la cola se ocupe de los bytes? Quiero decir, ¿y si el requisito es imprimir 20 bytes? Bueno, esto se puede hacer usando la opción de línea de comando -c.
tail -c [num] [filename]
Por ejemplo:
tail -c 20 file2
P4. ¿Cómo hacer que la cola siga los archivos de registro?
Si desea usar tail para seguir las actualizaciones de un archivo (por ejemplo, un archivo de registro) en tiempo real, use la opción de línea de comando -F o --follow.
tail -F [filename]
Por ejemplo:
tail -F file2
Tenga en cuenta que -f es igual a '--follow=name --retry'.
Aquí hay información que la página del manual enumera sobre las opciones -f/-F/--follow:
With --follow (-f), tail defaults to following the file descriptor, which means that even if a
tail'ed file is renamed, tail will continue to track its end. This default behavior is not
desirable when you really want to track the actual name of the file, not the file descriptor
(e.g., log rotation). Use --follow=name in that case. That causes tail to track the named file in
a way that accommodates renaming, removal and creation.
P5. ¿Cómo forzar la cola para seguir intentando acceder al archivo de entrada?
A veces, un archivo puede ser temporalmente inaccesible, algo que puede suceder debido a una variedad de razones. Para asegurarse de que Tail siga intentando abrir el archivo, use la opción --retry.
tail --retry [filename]
Conclusión
Así es como funciona el comando de cola. Espero que hayas disfrutado el tutorial, así como que hayas aprendido cosas útiles de él. Le sugerimos que pruebe estos ejemplos en su PC con Linux y luego vaya a la página del manual de la herramienta para obtener más información.