Cómo usar los comandos ‘cat’ y ‘tac’ con ejemplos en Linux

Este artículo es parte de nuestra serie de trucos y consejos de Linux, en este artículo cubriremos algunos usos básicos del comando cat. (comando más utilizado en Linux) y tac. (al revés del comando cat-imprime archivos en orden inverso) con algunos ejemplos prácticos.

Lea también: 13 ejemplos útiles de comandos ‘cat’ en Linux

Uso básico del comando Cat en Linux

El comando Cat. acrónimo de Concatenar. es uno de los comandos más utilizados en los sistemas * nix. El uso más básico del comando es leer archivos y mostrarlos en stdout. es decir, mostrar el contenido de los archivos en su terminal.

# cat file.txt

 Ver contenido de archivo en Linux

Ver contenido de archivo en Linux

Otro uso de el comando cat. es leer o combinar varios archivos y enviar la salida a un monitor como se ilustra en los ejemplos siguientes.

# cat file1.txt file2.txt file3.txt  Ver contenido de varios archivos

Ver contenido de varios archivos

El comando también se puede usar para concatenar (unir) varios archivos en un solo archivo usando el operador de redirección de Linux“> ”.

# cat file1 .txt file2.txt file3.txt> file-all.txt  Unir varios archivos en Linux Unir varios archivos en Linux

Al usar el redirector de anexos, puede agregar el contenido de un nuevo archivo al final del archivo-all.txt con la siguiente sintaxis.

# cat file4.txt>> file-all.txt  Agregar archivo de contenido a un archivo nuevo Agregar archivo de contenido a un archivo nuevo

El comando cat. se puede utilizar para copiar el contenido del archivo a un archivo nuevo. El nuevo archivo puede cambiarse de nombre de forma arbitraria. Por ejemplo, copie el archivo de la ubicación actual al directorio/tmp/.

# cat file1.txt>/tmp/file1.txt  Copiar el contenido del archivo en un archivo nuevo Copiar el contenido del archivo en un archivo nuevo

Copie el archivo desde la ubicación actual al directorio/tmp/y cambiar su nombre.

# cat file1.txt>/tmp/newfile.cfg Copiar archivo a/tmp Location Copiar archivo a la ubicación/tmp

Un uso menor del comando cat. es crear un nuevo archivo con la siguiente sintaxis. Cuando termine de editar el archivo, presione CTRL + D para guardar y salir del nuevo archivo.

# cat> new_file.txt

 Crear nuevo Archivo usando el comando Cat

Crear un nuevo archivo usando el comando Cat

Para numerar todas las líneas de salida de un archivo, incluidas las líneas vacías, use la opción-n.

# cat-n file-all.txt  Agregar números a las líneas en el archivo Agregar números a las líneas en el archivo

Para mostrar solo el número de cada línea no vacía, use el interruptor-b.

# cat-b file-all.txt  Imprimir números de línea en archivo Imprimir números de línea en archivo

¿Desea obtener más información sobre el comando cat de Linux? luego lea nuestro artículo sobre 13 ejemplos útiles de comandos ‘cat’ en Linux.

Aprenda a usar el comando Tac en Linux

Por otro lado, un comando menos conocido y menos utilizado en * nix systems es el comando tac. Tac. es prácticamente la versión inversa del comando cat (también escrito al revés) que imprime cada línea de un archivo comenzando desde la línea inferior y terminando en la línea superior en la salida estándar de su máquina.

# tac file-all.txt

 Imprimir archivo de contenido en orden inverso

Imprimir archivo de contenido en Orden inverso

Una de las opciones más importantes del comando está representada por el modificador-s, que separa el contenido del archivo en función de una cadena o una palabra clave del archivo.

# tac file-all. t xt–separator “dos”  Eliminar cadena coincidente en archivo Eliminar cadena coincidente en archivo

Siguiente, el uso más importante del comando tac. es que puede proporcionar una gran ayuda para depurar archivos de registro, invirtiendo el orden cronológico del contenido del registro.

$ tac/var/log/auth.log O para mostrar las últimas líneas $ tail/var/log/auth.log | tac Salida de muestra [email protected] ~ $ tac/var/log/auth.log. pr 6 16:09:01 tecmint CRON [17714]: pam_unix (cron: sesión): sesión cerrada para el usuario root 6 de abril 16:09:01 tecmint CRON [17714]: pam_unix (cron: sesión): sesión abierta para el usuario root por (uid = 0) 6 de abril 16:05:01 tecmint CRON [17582 ]: pam_unix (cron: sesión): sesión cerrada para el usuario root 6 de abril 16:05:01 tecmint CRON [17583]: pam_unix (cron: sesión): sesión cerrada para el usuario root 6 de abril 16:05:01 tecmint CRON [17583 ]: pam_unix (cron: session): sesión abierta para el usuario root por (uid = 0) 6 de abril 16:05:01 tecmint CRON [17582]: pam_unix (cron: session): sesión abierta para el usuario root por (uid = 0 ) 6 de abril 16:00:01 tecmint CRON [17434]: pam_unix (cron: sesión): sesión cerrada para el usuario root …. [email protected] ~ $ tail/var/log/auth.log | tac. 6 de abril 16:09:01 tecmint CRON [17714]: pam_unix (cron: sesión): sesión cerrada para el usuario root 6 de abril 16:09:01 tecmint CRON [17714]: pam_unix (cron: sesión): sesión abierta para el usuario root por (uid = 0) 6 de abril 16:05:01 tecmint CRON [17582]: pam_unix (cron: sesión): sesión cerrada para el usuario root 6 de abril 16:05:01 tecmint CRON [17583]: pam_unix (cron: sesión): sesión cerrada para el usuario root 6 de abril 16:05:01 tecmint CRON [17583]: pam_unix (cron: sesión): sesión abierta para el usuario root por (uid = 0) 6 de abril 16:05:01 tecmint CRON [17582]: pam_unix (cron: sesión): sesión abierta para el usuario root por (uid = 0) 6 de abril 16:00:01 tecmint CRON [17434]: pam_unix (cron: sesión): sesión cerrada para el usuario root 6 de abril 16:00:01 tecmint CRON [17434]: pam_unix (cron: sesión): sesión abierta para el usuario root por (uid = 0) 6 de abril 15:55:02 tecmint CRON [17194]: pam_unix (cron: sesión): sesión cerrada para el usuario root 6 de abril 15:55:01 tecmint CRON [17195]: pam_unix (cron: sesión): sesión cerrada para el usuario root …

Igual que el comando cat, tac hace un excelente trabajo en la manipulación de archivos de texto, pero debe evitarse en otro tipo de archivos, especialmente archivos binarios o en archivos donde la primera línea denota el programa que lo ejecutará.