El comando cat y sus usos en Linux ✍️

El comando cat, uno de los comandos que debes conocer si quieres aprovechar la consola o linea de comandos Unix / Linux / BSD.

En el articulo de hoy te hablare sobre el comando cat en Linux y sus posibles usos en consola.

Time needed: 3 minutes

Significado y diferentes usos de comando cat

  1. Significado de comando cat.

    Explicaremos que significa cat.

  2. Varios ejemplos y usos.

    Son varias las formas de uso dependiendo la necesidad y aquí te muestro varios ejemplos.

Que significa cat y cual es su uso?

cat viene de la palabra en ingles concatenate (concatenar en español) y su uso es concatenar (unir, sumar) archivos e imprimirlos en una salida estandard.

Prefieres verlo en vídeo? Dale al PLAY aquí debajo.

Comando cat en Linux y sus posibles usos.

Necesito mas información del comando cat linux, donde la consigo?

Hay dos comandos que te darán bastante información sobre el comando cat.

Ayuda de comando cat linux

Es la versión corta de su pagina man pero puede recordarnos la sintaxis rápidamente sin mucho buscar.

cat --help
Modo de empleo: cat [OPCIÓN]... [FICHERO]...
Concatenate FILE(s) to standard output.

Sin FICHERO, o cuando FICHERO es -, lee la entrada estándar.

  -A, --show-all           equivalent to -vET
  -b, --number-nonblank    number nonempty output lines, overrides -n
  -e                       equivalent to -vE
  -E, --show-ends          display $ at end of each line
  -n, --number             number all output lines
  -s, --squeeze-blank      suppress repeated empty output lines
  -t                       equivalente a -vT
  -T, --show-tabs          muestra los caracteres de tabulación como ^I
  -u                       (sin efecto)
  -v, --show-nonprinting   utiliza la notación ^ y M-, salvo para LFD y TAB
      --help     muestra esta ayuda y finaliza
      --version  informa de la versión y finaliza

Ejemplos:

   cat f - g Muestra los contenidos de f, luego la entrada estándar,
              luego los contenidos de g.
   cat       Copia la entrada estándar en la salida estándar.

ayuda en línea sobre GNU coreutils: <https://www.gnu.org/software/coreutils/>
Report cat translation bugs to <https://translationproject.org/team/>
Full documentation at: <https://www.gnu.org/software/coreutils/cat>
or available locally via: info '(coreutils) cat invocation'

Pagina man del comando cat

Es el lugar donde encuentras TODO sobre un comando o función en Linux / Unix / BSD y para cat linux no es la excepción.

man cat

Por ejemplo, así se vería en Fedora Linux de mi portátil.

man cat
CAT(1)                           User Commands                          CAT(1)

NAME
       cat - concatenate files and print on the standard output

SYNOPSIS
       cat [OPTION]... [FILE]...

DESCRIPTION
       Concatenate FILE(s) to standard output.

       With no FILE, or when FILE is -, read standard input.

       -A, --show-all
              equivalent to -vET

       -b, --number-nonblank
              number nonempty output lines, overrides -n
..
..

Ejemplos del uso del comando cat

Te mostrare algunos ejemplos de posibles usos de cat en Linux (en cualquier distribución).

Sintaxis general de comando cat

cat [opción]... [fichero] ..

Mostrar el contenido de un archivo

Ver o imprimir el contenido de un archivo a una salida.

En este caso mostramos el contenido del archivo resolv.conf con la información de DNS de un equipo.

cat /etc/resolv.conf 
# Generated by NetworkManager
search drivemeca.com
nameserver 1.1.1.1
nameserver 192.168.5.3
nameserver 8.8.8.8

Ver contenido de varios ficheros a la vez

Como lo dice su nombre, podemos unir o concatenar archivos y verlos impresos en pantalla u otra salida.

cat dia.txt noche.txt
Sale el sol y me tomo un café.
Llega la noche y me voy a descansar.

Usar cat para crear un archivo

Aunque no es la forma mas elegante (o cómoda) podemos crear un archivo desde linea de comandos con cat.

cat >poema-salvaje.txt

Seguidamente de presionar la tecla Enter, comenzaríamos a escribir.

Terminamos con la combinación de teclas ControlD regresando al prompt de nuestra terminal.

Agregar o sumar otro contenido con cat

Al anterior archivo podemos sumarle otro archivo con mas estrofas o simplemente el autor.

cat >>poema-salvaje.txt
Otro día continuo.
Autor: Pepe Acuña

Y terminamos con la combinación ControlD como en el anterior comando.

Mostrar archivos largos pausados

Seguramente quieres ver un archivo en pantalla pero es demasiado largo y solo alcanzas a ver el final.

El comando cat (como la gran mayoría de comandos Linux / Unix) permite el uso de filtros o pipe.

Pipe es la forma de llamar al filtrado con el carácter | (OJO, no es una I mayúscula sino la barra dividida en 2 vertical).

cat poema-salvaje.txt | less
cat poema-salvaje.txt | more

Numerar lineas de un fichero en pantalla con cat

Ya sea por orden o necesidad, podemos numerar en pantalla las lineas de un archivo.

cat -n /etc/group
     1	root:x:0:
     2	bin:x:1:
     3	daemon:x:2:
     4	sys:x:3:
     5	adm:x:4:
     6	tty:x:5:
     7	disk:x:6:
     8	lp:x:7:
     9	mem:x:8:
    10	kmem:x:9:
    11	wheel:x:10:drivemeca

En una única linea mostrar varios ficheros

Otro carácter que podemos usar es el ; (punticoma) para ejecutar varios comandos en una única linea, en este caso cat.

cat fichero1.txt; cat file2; cat otro-fichero.txt

Nuestro shell ejecutara cada comando con prioridad de izquierda a derecha.

Enviar salida a fichero o comando

Una poderosa forma de “armar” comandos es que la salida de cat cree un nuevo archivo o lo envié a la entrada de otro comando.

cat poema-salvaje.txt > poema-en-desarrollo.txt

El anterior comando imprime el contenido de poema-salvaje creando (o sobrescribiendo) el contenido de poema-en-desarrollo.txt

cat poema-salvaje.txt | mail -s "Poema para publicar" editor@superfantastico.com

Quien dice que no podemos enviar mails desde linea de comandos.

Con el anterior comando imprimimos el contenido de poema-salvaje.txt enviando un mail con asunto y remitente.

La anterior lista de comandos cat linux es solo una muestra de lo que podemos hacer usándolo.

Satisfech@ con el articulo, hazme una donación, no importa la cantidad, la intención es lo que vale, dale click a este botón

Comparte este articulo opensource en tus redes sociales (compartir es sexy) por medio de los botones de redes sociales para que otros lo conozcan y apoyes mi blog.

Ademas, no olvides escribirme en los comentarios aquí debajo y pasa la voz compartiendo el tweet.