Para unir dos o más archivos de texto en la línea de comandos de Linux, puede usar el gato dominio. El gato (abreviatura de “concatenar ”) es uno de los comandos más utilizados en Linux, así como en otros sistemas operativos similares a UNIX, que se utiliza para concatenar archivos e imprimir en la salida estándar.
No solo se usa para ver archivos, sino que también se puede usar para crear archivos junto con el carácter de redirección.
Ver contenido del archivo en Linux
Para ver el contenido de un archivo sin abrirlo, puede usar el comando cat como se muestra (recuerde reemplazar domains.txt
y domains2.txt
con los nombres de los archivos que desea combinar):
[abhi@linuxshelltips:~]$ cat domains.txt tecmint.com cyberciti.biz [abhi@linuxshelltips:~]$ cat domains2.txt linuxshelltips.com google.com
Unir contenidos de dos archivos en Linux
Para unir o combinar los dos archivos y verlos como uno solo en la terminal, ejecute el siguiente comando:
[abhi@linuxshelltips:~]$ cat domains.txt domains2.txt tecmint.com cyberciti.biz linuxshelltips.com google.com
También puede unir tres o más archivos, por ejemplo:
[abhi@linuxshelltips:~]$ cat file1 file2 file3 OR [abhi@linuxshelltips:~]$ cat file1 file2 file3 file4
Después de unir archivos, puede guardar la salida en un solo archivo usando el carácter de redirección como el siguiente:
[abhi@linuxshelltips:~]$ cat domains.txt domains2.txt > domains_all.txt [abhi@linuxshelltips:~]$ cat domains_all.txt
Además, puede unir dos o más archivos y agregar (agregar) su salida a un archivo existente. Por ejemplo:
[abhi@linuxshelltips:~]$ cat file1 file2 >> domains_all.txt
Fusionar el contenido de dos archivos usando el comando Sed
Alternativamente, también puede usar el popular sed
(un editor de transmisión) para unir o fusionar el contenido de dos o más archivos en la línea de comandos, usando su r
bandera, que instruye a sed
para leer el archivo proporcionado como argumento. Si hay muchos archivos, los lee todos y muestra su contenido como una salida combinada.
[abhi@linuxshelltips:~]$ sed r domains.txt domains2.txt [abhi@linuxshelltips:~]$ sed r domains.txt domains2.txt > sed_out.txt [abhi@linuxshelltips:~]$ cat sed_out.txt
Si tienes alguna otra duda sobre este tema, no dudes en pedir ayuda en la sección de comentarios.