Comando tail para Linux
Trabajar con el comando tail en Bash es muy parecido a trabajar con el comando head en Bash. El comando tail de Linux hace referencia a las últimas líneas del documento y head a las líneas del comienzo.
tail [opciones] [mi_archivo]
Hay que tener en cuenta que si no especificamos ninguna opción el comando tail nos mostrará las diez últimas líneas. Entendiendo por una línea de texto, un texto que finaliza con salto de línea.
Para seguir con esta entrada debemos tener en nuestro equipo un archivo de texto con unas cuantas líneas, a ser posible más de diez líneas. Hacer uso del texto de lorem ipsum puede ser una buena idea.
Aquí un ejemplo de archivo de texto con más de diez líneas.
Lorem ipsum
es el texto que se
usa habitualmente
en diseño
gráfico en demostraciones
de tipografías
o de b
orradores de di
seño para pro
bar el
diseño visual antes
de insertar el texto final.
Aunque no posee actualmente
fuentes para justificar su
s hipótesis,
el profesor de filología
clásica Richard McClintock asegura que su uso se remonta a los impresores de comienzos del siglo xvi.1 Su uso en algunos editores de texto muy conocidos en la actualidad ha dado al texto lorem ipsum nueva popularidad.
Haciendo uso del comando cat en Bash podemos ver que el texto anterior tiene 17 líneas.
cat -n lorem.txt
Sabiendo que tenemos un texto con más de diez líneas vamos a utilizar el comando tail de Linux por defecto. No agregaremos ninguna de las opciones disponibles para este comando.
tail lorem.txt
Este comando nos mostrará las diez últimas líneas del documento lorem.txt.
Si duplicamos ese archivo mediante el comando cp de Linux llamándolo por ejemplo lorem_copia.txt podremos hacer un tail de dos archivos a la vez.
cp lorem.txt lorem_copia.txt
Ahora podemos hacer uso del comando tail sobre lorem.txt y lorem_copia.txt a la vez. Esto nos mostrará de resultado las diez últimas líneas de cada uno de los documentos.
tail lorem.txt lorem_copia.txt
El comando tail genera en el resultado una separación de forma automática indicando ==> el nombre <== de cada archivo. Aunque en la siguiente captura de pantalla no se pueden apreciar correctamente las diez últimas líneas del fichero lorem_copia.txt, os aseguro que han aparecido correctamente 🙂

Opciones para tail en Bash
Mediante las opciones podemos afinar mucho más el comando tail de Linux. Recuerda que la mayoría de los comandos aumentan su potencia combinando las opciones disponibles. Puedes verlas todas ejecutando en la terminal man tail.
- -n: muestra las últimas n líneas del fichero.
tail -n 3 lorem.txt
- -c: muestra los últimos n bytes del fichero.
tail -c 300 lorem.txt
- -f: vigila un archivo en tiempo real esperando que se agreguen nuevas líneas. También controla cuando se eliminan algunas líneas ya existentes.
tail -f lorem.txt
- -v: muestra las últimas líneas de varios archivos, mostrando un encabezado con el nombre del archivo.
tail -v lorem.txt lorem_copia.txt
Este ejemplo utilizando opciones con el comando tail con Bash va a mostrar las dos últimas líneas de cada uno de los ficheros.
tail -n 2 lorem.txt lorem_copia.txt

En la captura de pantalla puede parecer que se muestran las cuatro últimas líneas de cada fichero, pero no es así, se están mostrando únicamente las dos últimas líneas, lo que pasa que la última línea ocupa bastante.
Haremos uso del comando cat -n para que numere las líneas y lo veamos con más claridad.
