如何使用perl或awk获取以下输出或者是否可以在linux命令中使用?
文件1:
1
2
2
4
file2的:
5
6
7
8
期望的输出:
1 5
2 6
2 7
4 8
答案 0 :(得分:5)
使用命令paste
paste file1 file2
答案 1 :(得分:2)
更灵活的解决方案,当文件中的行不是固定宽度时,将使用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
答案 2 :(得分:2)
更确切地说:
paste
命令只打印出来。要将其保存到新文件,命令应为:
paste file1 file2 > outputFile
outputFile
现在包含两列。
答案 3 :(得分:0)
您也可以使用GNU parallel执行此操作:
parallel --xapply echo '{1}' '{2}' :::: file1 :::: file2