如何在屏幕上将三个文本文件合并为三列?
1 A 1
2 B 2
3 C 3
D
E
我试过......
paste file1.txt file2.txt file3.txt | column -s $'\t' -t
......但我总是得到
1 A 1
2 B 2
3 C 3
D
E
提前感谢您的帮助!
file1.txt第1-2行
USB Device Class ID:
CdRom&Ven_ZALMAN&Prod__Virtual_CD-Rom&Rev_
file2.txt第1-2行
USB Instance ID:
______XX00000001&1
file3.txt第1-2行
Last updated (Subkey):
2015-01-12 15:08:45 UTC+0000
答案 0 :(得分:1)
我不知道您的输入文件,但粘贴按预期工作。
$ paste <(seq 1 4) <(seq 10 17) <(seq 5 9)
1 10 5
2 11 6
3 12 7
4 13 8
14 9
15
16
17
答案 1 :(得分:0)
:|paste -d ' ' file1 - file2 - file3 | column -ts "| "
将多个文件合并为一个表column -t
和-s
作为分隔符"| "
。
输出就像那样
1 A 1
2 B 2
3 C 3
D
E
答案 2 :(得分:0)
如果您只有3个文件或几个文件可以处理,您可以这样做:
$ paste foo[12].txt | expand -t 45 | paste - foo3.txt | expand -t 12
USB Device Class ID: USB Instance ID: Last updated (Subkey):
CdRom&Ven_ZALMAN&Prod__Virtual_CD-Rom&Rev_ ______XX00000001&1 2015-01-12 15:08:45 UTC+0000
______XY0000000182
$
您需要根据45
和12
中的最大行宽选择标签扩展foo1.txt
和foo2.txt
。