Comando de Linux Cat con ejemplos
El comando Cat se usa en Linux para concatenar archivos e imprimir en la salida estándar. Cat se usa comúnmente para ver el contenido de un archivo, para redirigir, crear y concatenar archivos. Cat es un comando integrado en todas las distribuciones de Linux de forma predeterminada.
La sintaxis del comando cat es:
cat [OPTION] [FILE]
1) Ver el contenido de un archivo
Para ver el contenido de un archivo, use el comando cat seguido del nombre del archivo.
Por ejemplo:
$ cat /etc/issue CentOS release 5.10 (Final) Kernel r on an m
Para abrir y ver el contenido de varios archivos, use el comando cat seguido de varias rutas de archivo:
$ cat /etc/issue /etc/lsb-release Ubuntu 16.04.4 LTS n l DISTRIB_ID=Ubuntu DISTRIB_RELEASE=16.04 DISTRIB_CODENAME=xenial DISTRIB_DESCRIPTION="Ubuntu 16.04.4 LTS" root@testwebsrvlinode02:~# cat /etc/issue Ubuntu 16.04.4 LTS n l
2) Copiar a otro archivo
Para copiar contenido a otro archivo, use el operador > con comando de gato. Déjame mostrarte un ejemplo.
El siguiente comando creará un archivo ‘linuxdistro’ que tiene el mismo contenido que el archivo / root / linux. Si el archivo ya existe, reescribirá el contenido.
$ cat /root/linux > /root/linuxdistro
Para copiar contenido de varios archivos, utilice el siguiente ejemplo:
$ cat file1.txt file2.txt > newfile.txt
3) Agregar contenido al final del archivo
En lugar de sobrescribir si desea agregar contenido al final del archivo, use el operador >>.
Sintaxis
$ cat file1.txt file2.txt >> newfile3.txt
Veamos un ejemplo;
$ cat file1.txt one two $ cat file2.txt three $ cat file1.txt file2.txt > newfile.txt $ cat newfile.txt one two three $
4) Creando un nuevo archivo
Hay muchas formas de crear un archivo de texto en Linux. Para crear un archivo, use el comando cat seguido del operador de redirección y el nombre del archivo para crear. Al presionar Enter y agregar el contenido del archivo, una vez hecho esto, presione CRTL + D para guardar el archivo.
Por ejemplo:
Cuando escribe ‘cat> operating_system’, se creará un archivo que se denominará operating_system. Luego presione Enter y verá una línea en blanco debajo del comando cat. Puede escribir el contenido que desee. Escribimos Unix, Linux, Windows y MacOS, por ejemplo. Cuando haya terminado, presione ‘Ctrl + D’ para guardar el contenido y salir del comando cat. Verá que se crea un archivo llamado ‘sistema_operativo’ en la carpeta actual con el contenido que agregó antes.
# cat > operating_system Unix Linux Windows MacOS
Nota: Si el archivo ‘operating_system’ ya existe, lo sobrescribirá.
5) Redirigir la entrada estándar
También puede redirigir la entrada estándar mediante el operador < (símbolo menor que).
En el siguiente ejemplo, la entrada para el comando cat sería el contenido de / root / linux.
$ cat < /root/linux
ubuntu centos redhat mint slackware
El siguiente comando tomará el contenido del archivo / root / linux y clasificará la salida en un archivo:
$ cat < /root/linux | sort > linux-sort centos mint redhat slackware ubuntu
6) Combina el comando cat con pipe
Es muy útil combinar el comando cat con el operador de tubería. Tomemos algunos ejemplos.
Cuando su archivo no puede caber en su pantalla, puede combinar cat con el comando más o menos usando | para que se muestre por página.
# cat /proc/meminfo | less
# cat /proc/meminfo | more
para eliminar un número de línea específico usando el comando cat, use con el comando sed, como:
El siguiente comando elimina la línea número 3 del archivo llamado sample.txt:
$ cat -n /home/sample.txt | sed '3d' 1 text 1 2 text 2 4 text 4 5 text 5 6 text 6
Si desea ordenarlo, puede combinarlo con el comando de ordenación. Este es el ejemplo:
$ cat /root/linux | sort centos mint redhat slackware Ubuntu
7) Agregue números de línea al archivo
Para agregar números de línea a un archivo, use el comando cat con la opción -n seguida del nombre del archivo. Por ejemplo:
# cat -n /etc/ntp.conf 1 # Permit time synchronization our time resource but do not 2 # permit the source to query or modify the service on this system 3 restrict default kod nomodify notrap nopeer noquery 4 restrict -6 default kod nomodify notrap nopeer noquery 5 6 # Permit all access over the loopback interface. This could be 7 # tightened as well, but to do so would effect some of the 8 # administration functions 9 restrict 127.0.0.1 10 restrict -6 ::1
8) Numere las líneas de salida que no están en blanco
Similar a la opción -n, la opción -b mostrará los números de línea en el archivo. La diferencia es que la opción -b solo numerará las líneas que no estén en blanco.
Salida de muestra:
$ cat -b /etc/ntp.conf 1 # Permit time synchronization our time resource but do not 2 # permit the source to query or modify the service on this system 3 restrict default kod nomodify notrap nopeer noquery 4 restrict -6 default kod nomodify notrap nopeer noquery 5 # Permit all access over the loopback interface. This could be 6 # tightened as well, but to do so would effect some of the 7 # administration functions 8 restrict 127.0.0.1 9 restrict -6 ::1
9) Eliminar líneas en blanco repetidas
Para suprimir las líneas de salida vacías repetidas, use la opción -s. Esto comprimirá varias líneas en blanco en el archivo. es decir, no aparecerá más de una línea en blanco.
$ cat /home/sample.txt text 1 text 2 text 4 text 5 $ cat -s /home/sample.txt text 1 text 2 text 4 text 5
10) Mostrar pestañas en archivo
Para indicar pestañas en un archivo, use la opción -T. La pestaña estará representada por caracteres ^ I.
# cat -T /etc/hosts # Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1 ^I^I localhost.localdomain localhost ::1 ^I^I localhost6.localdomain6 localhost6
11) Mostrar final de líneas
Utilice el parámetro -E para mostrar ‘$’ al final de cada línea. Este es el ejemplo:
# cat -E /etc/hosts # Do not remove the following line, or various programs$ # that require network functionality will fail.$ 127.0.0.1 localhost.localdomain localhost$ ::1 localhost6.localdomain6 localhost6$
Si desea combinar entre -T y -E, puede usar el parámetro -A.
# cat -A /etc/hosts # Do not remove the following line, or various programs$ # that require network functionality will fail.$ 127.0.0.1^I^Ilocalhost.localdomain localhost$ ::1^I^Ilocalhost6.localdomain6 localhost6$
12) Leer contenido hasta un patrón específico
Cuando lee desde stdin, puede leer hasta una línea que contiene un patrón específico. En el siguiente ejemplo, el bloque de líneas se lee desde stdin (hasta EOF) y se imprime en la salida estándar.
# cat <<EOF > Redhat > Ubuntu > EOF
Y la Salida de lo anterior será:
Redhat Ubuntu
13) Mostrar todos los archivos con comodines
Combine el comando cat con el carácter comodín de Linux para ver los textos de los archivos a la vez en el directorio actual.
El siguiente comando mostrará todos los textos dentro de cada archivo en el directorio actual.
# cat *
o
Mostrar todos los textos de cada archivo con extensión .txt en el directorio actual.
# cat *.txt
Conclusión
Incluso el comando cat parece muy simple, hemos visto muchas veces que los usuarios de Linux sobrescriben archivos muy importantes usando el operador de redirección. Asegúrese de que el nombre del archivo que está creando no coincida con el nombre de un archivo existente. Si planea agregar, asegúrese de usar «>>» y no «>».
En este artículo, aprendimos sobre el comando cat de Linux y su opción con ejemplos. Envíe sus comentarios en la sección de comentarios a continuación.
Leer también: