Comment deux fichiers texte non triés de différentes longueurs peuvent-ils être affichés côte à côte (en colonnes) dans unshell
Donné one.txtet two.txt:
$ cat one.txt
apple
pear
longer line than the last two
last line
$ cat two.txt
The quick brown fox..
foo
bar
linux
skipped a line
Afficher:
apple The quick brown fox..
pear foo
longer line than the last two bar
last line linux
skipped a line
paste one.txt two.txtfait presque l'affaire mais n'aligne pas bien les colonnes car il imprime juste un onglet entre les colonnes 1 et 2. Je sais comment faire avec emacs et vim mais je veux que la sortie soit affichée sur stdout pour la tuyauterie ect.
La solution que j'ai proposée utilise sdiff, puis des tuyaux à sed pour supprimer la sortie sdiffajoute.
sdiff one.txt two.txt | sed -r 's/[<>|]//;s/(\t){3}//'
Je pourrais créer une fonction et la coller dans mon .bashrcmais sûrement une commande pour cela existe déjà (ou une solution plus propre potentiellement)?