Comando head para Linux
Con el comando head de Linux conseguimos de forma sencilla mostrar las primeras líneas de un fichero. Cuando tenemos archivos largos y solo queremos «mostrar su cabeza (head)» es una excelente idea utilizar este comando.
head [opciones] [mi_archivo]
Hay que tener en cuenta que si no especificamos ninguna opción el comando head nos mostrará las diez primeras 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. Creando el fichero de texto lorem.txt.
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 head de Linux por defecto. No agregaremos ninguna de las opciones disponibles para este comando.
head lorem.txt
Este comando nos mostrará las diez primeras 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 head de dos archivos a la vez.
cp lorem.txt lorem_copia.txt
Ahora podemos hacer uso del comando head sobre lorem.txt y lorem_copia.txt a la vez. Esto nos mostrará de resultado las diez primeras líneas de cada uno de los documentos.
head lorem.txt lorem_copia.txt
El comando head genera en el resultado una separación de forma automática indicando ==> el nombre <== de cada archivo.

Opciones para head en Bash
Mediante las opciones podemos afinar mucho más el comando head 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 head.
- -n: muestra las primeras n líneas del fichero.
head -n 3 lorem.txt
- -c: muestra los primeros n bytes del fichero.
head -c 300 lorem.txt
- -q: muestra las primeras líneas de un fichero suprimiendo el encabezado con el nombre del archivo.
head -q lorem.txt
- -v: muestra las primeras líneas de varios archivos, mostrando un encabezado con el nombre del archivo.
head -v lorem.txt lorem_copia.txt
Este ejemplo utilizando opciones con el comando head con Bash va a mostrar las tres primeras líneas de cada uno de los ficheros.
head -n 3 lorem.txt lorem_copia.txt

Aunque se sale un poco del uso del comando head para Linux, se nos puede pasar por la cabeza mostrar las cinco primeras líneas del primer fichero y las dos primeras del segundo.
Para llevar a cabo esto tendríamos que hacer uso del operador lógico && AND. Teniendo en cuenta que si el primer comando no se ejecuta correctamente (devolviendo un código de salida 1), el segundo comando no se ejecutará.
head -n 5 lorem.txt && head -n 2 lorem_copia.txt
Al tratarse de la ejecución de dos comandos head de un solo archivo, no obtenemos el resultado con la separación del ==> el nombre <== de cada archivo creada de forma automática.
Para que podamos ver la separación de los dos archivos, podemos crearla imprimiendo algunos guiones entre los comandos.
head -n 5 lorem.txt && echo '--' && head -n 2 lorem_copia.txt

Trabajar con el comando head en Bash es muy parecido a trabajar con el comando tail en Bash. Uno hace referencia las primeras líneas del documento y el otro comando a las líneas del final.