如何并排显示2个不同长度的未排序文本文件(在列中)在一个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之间打印一个标签。
我想出的解决方案使用sdiff
,然后通过管道进行sed来删除输出sdiff
。
sdiff one.txt two.txt | sed -r 's/[<>|]//;s/(\t){3}//'
我可以创建一个函数并将其粘贴在我的函数中,.bashrc
但是肯定已经存在一个命令(或者可能存在更干净的解决方案)?