如何使用 perl 或 awk 获得以下输出,或者在 linux 命令中是否有可能?
文件1:
1
2
2
4
文件2:
5
6
7
8
期望的输出:
1 5
2 6
2 7
4 8
用命令paste
paste file1 file2
更准确地说:
paste
命令只是打印出来。要将其保存到新文件,命令应为:
paste file1 file2 > outputFile
outputFile
现在包含两列。
当文件中的行不是固定宽度时,一个更灵活的解决方案是pr
:
$ pr -mtw 10 file1 file2
1 5
2 6
3 7
4 8
更改file1
为包含可变宽度线:
$ cat file1
The number 1
two
3
The last number is the number four
# With pr two columns are output
$ pr -mt file1 file2
The number 1 5
two 6
3 7
The last number is the number four 8
# Paste simply inserts a tab which doesn't format the output in two columns
$ paste file1 file2
The number 1 5
two 6
3 7
The last number is the number four 8
您也可以使用 GNU 并行执行此操作:
parallel --xapply echo '{1}' '{2}' :::: file1 :::: file2