Dominio completo del comando cat en Linux

Introducción

En entornos Linux, la herramienta básica más utilizada para comprobar y concatenar rápidamente el contenido de archivos de texto es el comando cat. Más allá de la simple visualización de archivos, examinaremos directamente en un entorno de prácticas en Ubuntu las opciones clave que maximizan la eficiencia en tareas reales, como la numeración de líneas, la compresión de líneas vacías y la visualización de caracteres especiales. Compare las diferencias de comportamiento de cada opción junto con sus salidas reales en la terminal y lleve su productividad en la línea de comandos al siguiente nivel.

1. Creación de un archivo de texto de muestra para prácticas y visualización básica

Para practicar las diversas opciones del comando cat, crearemos un archivo sample.txt que contiene líneas en blanco consecutivas, caracteres de tabulación y espacios al final de línea.

printf ‘First line\n\n\nSecond line with tab:\t[TAB]\nThird line with trailing space   \n’ > sample.txt

El comando cat muestra directamente en la pantalla de la terminal el contenido del archivo especificado.
Si se ejecuta sin opciones, muestra el texto original del archivo tal como está.
⚙️ [Opciones principales]

-n : Numera todas las líneas en su inicio al mostrarlas, incluidas las líneas vacías.
-b : Numera únicamente las líneas no vacías al mostrarlas.
-s : Suprime y compacta dos o más líneas en blanco consecutivas en una sola línea vacía.
-E : Muestra un símbolo $ al final de cada línea para indicar el carácter de salto de línea.
-T : Muestra los caracteres de tabulación (Tab) como ^I para distinguirlos visualmente.

cat sample.txt

2. Comparación de opciones para mostrar números de línea (-n frente a -b)

El comando cat -n sample.txt muestra todas las líneas del archivo numeradas.
Resulta muy útil para comprobar la estructura general y la posición de las líneas, incluyendo aquellas vacías sin texto (líneas 2 y 3).

cat -n sample.txt

El comando cat -b sample.txt numera únicamente las líneas que no están vacías.
Dado que omite la numeración en las líneas en blanco, resulta conveniente para conocer únicamente la cantidad de líneas con datos válidos.

cat -b sample.txt

3. Compactar líneas vacías consecutivas en una sola para mejorar la legibilidad (-s)

El comando cat -s sample.txt comprime múltiples líneas vacías consecutivas en una única línea en blanco al mostrar el contenido.
Es práctico para reducir espacios innecesariamente largos y mejorar la legibilidad general del texto.

cat -s sample.txt

El comando cat -ns sample.txt compacta las líneas vacías consecutivas y, al mismo tiempo, numera todas las líneas resultantes.
Es muy eficaz para evaluar de un vistazo tanto la posición del texto como el número total de líneas comprimidas.

cat -ns sample.txt

4. Visualización de caracteres especiales no visibles, saltos de línea y tabulaciones (-E, -T, -A)

El comando cat -E sample.txt muestra el contenido añadiendo un símbolo $ al final de cada línea (posición del salto de línea).
Permite comprobar de forma intuitiva si existen saltos de línea innecesarios o espacios invisibles al final de las frases (Trailing Space).

cat -E sample.txt

El comando cat -T sample.txt sustituye los caracteres de tabulación (Tab) por la secuencia ^I en pantalla.
Permite diferenciar claramente los espacios estándar de los tabuladores, resultando muy útil para detectar errores de sangría en código o archivos de configuración.

cat -T sample.txt

El comando cat -A sample.txt visualiza todos los caracteres de control ocultos, saltos de línea y tabulaciones.
Equivale a combinar las opciones -vET, mostrando tanto tabulaciones (^I) como saltos de línea ($) de manera simultánea para inspeccionar de una sola vez posibles fallos causados por espacios invisibles.

cat -A sample.txt

5. Fusión de varios archivos y creación de archivos mediante EOF

Para practicar la combinación de archivos, crearemos un archivo header.txt con información de encabezado.

echo ‘Header Info’ > header.txt

El comando cat header.txt sample.txt > merged.txt combina secuencialmente el contenido de header.txt y sample.txt, guardando el resultado en un nuevo archivo merged.txt.
Resulta idóneo para unir varios archivos de texto en uno solo o para añadir un encabezado al inicio de un documento.

cat header.txt sample.txt > merged.txt

El comando cat << 'EOF' > append_test.txt utiliza la sintaxis Here Document para generar el archivo append_test.txt con varias líneas de contenido escritas en la shell hasta ingresar EOF.
Es muy útil para escribir rápidamente varias líneas de texto en un archivo dentro del entorno de shell sin necesidad de abrir un editor.

cat « ‘EOF’ > append_test.txt
Line A
Line B
EOF

El comando cat merged.txt append_test.txt concatena secuencialmente en la terminal el contenido de los archivos previamente creados, merged.txt y append_test.txt.
Permite verificar de un solo vistazo si el flujo y el orden de los datos fusionados son correctos.

cat merged.txt append_test.txt

Hasta aquí hemos revisado de forma concisa desde los conceptos básicos del comando cat en Linux hasta sus 5 opciones principales más empleadas en entornos de producción y sus resultados de ejecución.
Aproveche activamente las opciones más adecuadas según cada situación para incrementar aún más su eficiencia al inspeccionar archivos y trabajar en la terminal.