Как можно отображать два несортированных текстовых файла разной длины рядом (в столбцах) вshell
Учитывая one.txtи 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
Дисплей:
apple The quick brown fox..
pear foo
longer line than the last two bar
last line linux
skipped a line
paste one.txt two.txtпочти выполняет трюк, но не выравнивает столбцы должным образом, поскольку он просто печатает одну вкладку между столбцами 1 и 2. Я знаю, как это сделать с помощью emacs и vim, но хочу, чтобы вывод отображался в stdout для трубопроводов и т. д.
Решение, которое я придумал, использует, sdiffа затем каналы для sed, чтобы удалить sdiffдобавленные выходные данные .
sdiff one.txt two.txt | sed -r 's/[<>|]//;s/(\t){3}//'
Я мог бы создать функцию и вставить ее в свою, .bashrcно наверняка команда для этого уже существует (или потенциально более чистое решение)?