我有3个文件。
cat file1
A
B
C
cat file2
2
3
4
cat file3
a
b
c
我需要将它们合并到这样的文件中。
输出:
file1 file2 file3
A 2 a
B 3 b
C 4 c
我如何在shell脚本中执行。
此致
答案 0 :(得分:3)
paste
是你的朋友
{ echo "file1\tfile2\tfile3"
paste file1 file2 file3 ; } > newOutFile
\t
是tab-chars,如果你想要一个不同的字段分隔符,只需改变它。
(如果您希望间距很大的列与文件中最宽的值相同,那么您需要一个更复杂的解决方案。对于这种情况,请发布一个新问题。)
请注意,{ ... }
称为进程组,并且进程组中的最后一个命令必须与结束}
字符分隔;
。
查看手册页以了解一些选项。
IHTH
答案 1 :(得分:2)
paste file1 file2 file3
默认情况下,它们会被标签分隔;您可以使用-d
选项更改分隔符。使用重定向保存到另一个文件而不是打印到标准输出。