J'ai deux fichiers texte, chacun d'eux contient une information par ligne comme ça
file1.txt file2.txt
---------- ---------
linef11 linef21
linef12 linef22
linef13 linef23
. .
. .
. .
Je voudrais fusionner ces fichiers lignes par lignes en utilisant un script bash afin d'obtenir:
fileresult.txt
--------------
linef11 linef21
linef12 linef22
linef13 linef23
. .
. .
. .
Comment cela peut-il être fait dans Bash?
paste -d "\n" * > results.txt
paste
séparera chaque colonne avec un onglet à moins que vous substituez avec l'-d
option de sorte que vous pouvez utiliser quelque chose commeawk
,sed
, etc ... pour mettre en forme chaque ligne. Exemple:paste file1.txt file2.txt | awk '{printf "%-61s | %s\n", $1,$2}'
... cela imite ladiff --side-by-side
sortie)paste -d ""
pour concaténer des lignes sans délimiteurs, espacevoici les méthodes sans coller
awk
Frapper
la source
Essayez de suivre.
la source
Vérifier
possible suivi d'une commande comme
untabify
outabs2spaces
la source