Introducción
Contenido
- 1 Introducción
- 2 Escribir texto en un archivo con cat
- 3 Concatenar archivos con cat
- 4 Entrada estándar entre archivos
- 5 Adjuntar archivos con cat
- 6 Concatenar el contenido de todos los archivos del directorio con cat
- 7 Enumeración de números de línea
- 8 Escriba $ al final de cada línea
- 9 Clasificación de líneas de archivos concatenados por canalización
- 10 Conclusión
los cat
El comando es una herramienta de Unix que se utiliza para manipular y mostrar el contenido del archivo. El comando recibe su nombre de la palabra «concatenar» porque tiene, entre otras cosas, la capacidad de concatenar archivos.
En este artículo, veremos algunas formas sencillas de usar este comando para escribir texto en un archivo con ejemplos. Utilizando cat
es muy sencillo, por lo que no se necesita programación previa o experiencia en Unix para seguirlo.
Conceptos básicos del comando cat
Comenzando, resumiremos los conceptos básicos del cat
comando para ayudarlo si nunca lo ha usado antes o si necesita una breve descripción general.
Sintaxis
La sintaxis se ve así:
cat [OPTION]... [FILE]...
Para buscar rápidamente la sintaxis o las opciones de comando, ejecute cat con la opción de ayuda:
Te puede interesar:node: Mostrar archivos en un directorio$ cat --help
O puede utilizar las páginas del manual:
$ man cat
Estos comandos deben mostrar la siguiente lista de opciones:
-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 equivalent to -vT
-T, --show-tabs display TAB characters as ^I
-u (ignored)
-v, --show-nonprinting use ^ and M- notation, except for LFD and TAB
--help display this help and exit
--version output version information and exit
Visualización del contenido del archivo en la salida estándar
Para imprimir el contenido de un archivo en la salida estándar, simplemente nombre el archivo que desea mostrar:
$ cat filename1
Si el archivo está en un directorio diferente, tendrá que navegar hasta él:
$ cat /dir1/dir2/filename1
Esperamos ver el contenido de este archivo, impreso en la salida estándar, en este caso, la terminal:
Content of filename1!
Este es el uso más común del comando cat, ya que facilita la visualización del contenido de un archivo sin abrir un editor de texto.
Te puede interesar:El mito de la multitarea como desarrolladorEscribir texto en un archivo con cat
Para redirigir la salida del cat
comando de la salida estándar a un archivo, podemos usar el operador de redirección de salida >
:
$ cat filename1 > filename2
Esto sobrescribirá el contenido de filename2
con el contenido de filename1
, así que asegúrate de que filename2
no contiene nada que te importaría perder. Ahora, filename2
contiene:
Content of filename1!
El operador de redirección de salida redirigirá la salida de cualquier comando que llamemos. Por ejemplo, probémoslo con el pwd
comando, que imprime el nombre del directorio de trabajo actual:
$ pwd > testfile
Si echamos un vistazo al testfile
ahora:
$ cat testfile
Contiene la ruta del directorio de trabajo actual:
/home/kristina
Si el archivo al que está redirigiendo no existe, se creará un archivo con ese nombre:
Te puede interesar:Preparación para una entrevista de trabajo como programador$ cat filename1 > newfilename
Concatenar archivos con cat
Concatenar varios archivos usando cat
es simple: simplemente enumere los archivos en el orden deseado:
$ cat filename1 filename2 > outputfile
$ cat outputfile
Esto toma el filename1
y filename2
archivos, los concatena y genera la salida en un nuevo outputfile
:
Content of filename1!
Content of filename2!
Entrada estándar entre archivos
Cuando no aparece el nombre del archivo de entrada, cat
comienza a leer desde la entrada estándar hasta que alcanza EOF
(fin del documento). La señal de fin de archivo es enviada por el ctrl+d
atajo de línea de comando:
$ cat > outputfile
Hello
World
$ cat outputfile
Esto daría como resultado:
Hello
World
Incluso podemos agregar texto de la entrada estándar entre los archivos que deseamos concatenar usando -
para indicar dónde esperamos la entrada estándar. Si tenemos archivos como filename1
, filename2
y filename3
, y queremos algo de texto de la entrada estándar entre filename1
y filename2
, escribiríamos:
$ cat filename1 - filename2 filename3 > output
Text from standard input!
$ cat output
Comprobación output
, veremos algo parecido a:
Content of filename1!
Text from standard input!
Content of filename2!
Content of filename3!
Adjuntar archivos con cat
En los ejemplos anteriores, el uso del operador de redirección descartó el contenido anterior de la output
archivo. ¿Qué pasa si queremos agregar el contenido nuevo al contenido anterior? Para agregar archivos usamos el >>
operador:
$ cat filename1 filename2 >> output
$ cat output
Y eso debería resultar en:
Original output file contents.
Content of filename1!
Content of filename2!
Concatenar el contenido de todos los archivos del directorio con cat
Para concatenar todo el contenido de todos los archivos en un directorio, usamos el comodín *
:
$ cat /dir1/dir2/* > output
Para concatenar todo el contenido de todos los archivos en el directorio de trabajo actual, usaríamos:
$ cat * > output
*
también se puede utilizar para concatenar todos los archivos con la misma extensión:
$ cat *.txt > output
Enumeración de números de línea
La enumeración de todas las líneas de salida se realiza con la -n
opción:
$ cat -n filename1 filename2 filename3 > output
$ cat output
Lo que escribiría algo en la línea de:
1 Content of filename1!
2 Content of filename2!
3 Content of filename3!
Escriba $ al final de cada línea
los -E
La opción marca el final de cada línea en el archivo con la $
personaje:
$ cat -E filename1 filename2 filename3 > output
$ cat output
Clasificación de líneas de archivos concatenados por canalización
Este es un poco engañoso. los cat
El comando no puede ordenar, pero podemos usar tuberías para lograrlo. El comando de tubería (|
) se utiliza para convertir la salida de un comando en la entrada de otro. Para ordenar las líneas de un archivo, usaremos ambos cat
y otro comando, llamado sort
:
$ cat filename2 filename3 filename1 | sort > output
$ cat output
Esto resulta en:
Content of filename1!
Content of filename2!
Content of filename3!
Conclusión
Cat es una herramienta Unix simple pero poderosa que viene preinstalada en la mayoría de los sistemas. Se puede usar solo o en combinación con otros comandos que usan tuberías. Fabricado originalmente por Ken Thompson y Dennis Ritchie en 1971, cat
Las funcionalidades intuitivas y fáciles de usar resisten el paso del tiempo.
En este artículo, hemos explorado algunas de las posibilidades de utilizar el cat
comando para escribir texto en archivos, verificar contenido, concatenar y adjuntar archivos, así como enumerar líneas y ordenarlas.