Tengo dos archivos de texto, cada uno de ellos contiene información por línea como esa
file1.txt file2.txt
---------- ---------
linef11 linef21
linef12 linef22
linef13 linef23
. .
. .
. .
Me gustaría fusionar estos archivos líneas por líneas usando un script bash para obtener:
fileresult.txt
--------------
linef11 linef21
linef12 linef22
linef13 linef23
. .
. .
. .
¿Cómo se puede hacer esto en Bash?
paste -d "\n" * > results.txt
paste
separará cada columna con una pestaña a menos que anule la-d
opción, por lo que puede usar algo comoawk
,sed
, etc ... para dar formato a cada línea. Ejemplo:paste file1.txt file2.txt | awk '{printf "%-61s | %s\n", $1,$2}'
... esto imita ladiff --side-by-side
salida)paste -d ""
para concatenar líneas sin delimitadores, espacioaquí hay métodos sin pegar
awk
Intento
fuente
Intenta seguirlo.
fuente
Cheque
posible seguido de algún comando como
untabify
otabs2spaces
fuente