Linux / Comando cat: mostrar y concatenar archivos de texto
cat es un comando que envía el contenido de archivos a la salida estándar y concatena varios archivos en orden. Es útil para verificar rápidamente textos cortos o combinar archivos, pero para leer archivos largos less es más conveniente.
Los ejemplos de lectura requieren archivos existentes; sustituya los nombres de muestra por sus rutas reales. Compare esta función con otras herramientas en la Lista de comandos de uso frecuente en Linux.
El nombre proviene de concatenate. Si se ejecuta sin argumentos, lee la entrada estándar, y si se especifican varios archivos, muestra el contenido en el orden indicado. No modifica los archivos originales, pero si se especifica incorrectamente el destino de la redirección del shell, el archivo puede vaciarse.
Sintaxis básica
cat [OPCIONES] [ARCHIVO ...]
Las opciones y el comportamiento detallado pueden variar según la implementación y la versión. En el sistema actual, consulte la descripción de los comandos instalados como cat --help y man cat.
Uso básico de cat
Mostrar contenido de un archivo
Ver fragmentos de archivos de configuración cortos o registros en la pantalla.
cat /etc/os-release
Concatenar varios archivos para mostrar
No inserta automáticamente caracteres de separación entre archivos, por lo que deben añadirse por separado si es necesario.
cat part-01.txt part-02.txt
Combinar en un archivo nuevo
Guarde los resultados mediante redirección de salida. No use la misma ruta para el archivo de entrada y el archivo de salida, ya que el shell vaciará primero el archivo de salida.
cat chapter-1.txt chapter-2.txt > book.txt
Verificar el resultado de la salida estándar
El ejemplo siguiente crea sample.txt y muestra sus dos líneas. Ejecútelo en un directorio de práctica nuevo y compruebe antes que ese nombre no existe para evitar sobrescribir otro archivo.
printf 'one\ntwo\n' > sample.txt
cat sample.txt
Ejemplo de salida:
one
two
cat no detiene archivos largos por páginas, por lo que el resultado puede pasar rápidamente por la pantalla. Para explorar el contenido, use less.
Opciones principales
| Opciones | Descripción |
|---|---|
-n |
Se adjunta un número de línea a todas las líneas de salida. |
-b |
Se numera solo las líneas no vacías y tiene prioridad sobre -n. |
-s |
Se comprimen las líneas vacías consecutivas en una sola línea. |
-E |
Se muestra $ al final de cada línea. |
-T |
Se muestran los caracteres de tabulación como ^I. |
-A |
Equivale a -vET: muestra finales de línea, tabulaciones y otras representaciones de caracteres no imprimibles; también puede representar bytes no ASCII. No cambia la codificación del archivo. |
Ejemplos de uso práctico
Revisar con números de línea
Es útil al comparar los números de línea de los mensajes de error con los archivos de configuración.
cat -n app.conf
Verificar caracteres invisibles
La opción de visualización se utiliza al investigar espacios en blanco, tabulaciones o problemas de CRLF al final de las líneas.
cat -A script.sh
Guardar la entrada estándar en un archivo
Use cat > memo.txt solo si memo.txt no existe o si desea reemplazar conscientemente su contenido: el shell lo abre y puede vaciarlo antes de que empiece a escribir. En una terminal habitual, pulse Ctrl+D en una línea vacía para indicar el fin de la entrada. Para editar un documento, suele ser más adecuado un editor.
cat > memo.txt
Comparación de comandos relacionados con cat
| Comando | Rol principal | Situaciones adecuadas |
|---|---|---|
cat |
Salida · combinación | Archivos cortos y entrada de tubería |
less |
Vista de página interactiva | Exploración de archivos largos |
tac |
Inversión del orden de las líneas | Ver las últimas líneas primero |
paste |
Combinación por línea | Combinar archivos en forma de línea |
Precauciones al usar
Revise archivos grandes con less
Si imprime un archivo de gran tamaño en la terminal, consumirá innecesariamente la pantalla y el búfer de la terminal.
Evitar que la salida apunte a un archivo de entrada
cat file > file puede vaciar el archivo en la shell antes de que cat lo lea.
Evite la salida de archivos binarios
Use file, hexdump o xxd, ya que los bytes de control pueden desordenar la visualización en la terminal.
FAQ
¿cat modifica el contenido de los archivos?
No. La operación básica es leer y enviar a la salida estándar. Sin embargo, el destino de la redirección puede ser creado o sobrescrito por el shell.
¿Se insertan automáticamente líneas en blanco entre varios archivos?
No. Los bytes de cada archivo se muestran tal como están.
¿Cómo se muestran los números de línea?
Todas las líneas utilizan -n, y solo las líneas que contienen contenido utilizan -b.
¿Se puede ver un registro largo con cat?
Es posible, pero si se necesita exploración y búsqueda, less es adecuado.




