我有 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脚本中做。
问候
paste
是你的朋友
{ echo "file1\tfile2\tfile3"
paste file1 file2 file3 ; } > newOutFile
\t
它们是制表符,如果您想要不同的字段分隔符,只需更改它即可。(如果您想要间隔良好的列与文件中最宽值的宽度相同,那么您将需要一个更复杂的解决方案。对于这种情况,请发布一个新问题)。
请注意,这{ ... }
称为进程组,并且进程组中的最后一个命令必须与结束}
字符分开,并用;
.
查看手册页以获取一些选项。
IHTH
paste file1 file2 file3
默认情况下,它们将由制表符分隔;-d
您可以使用选项更改分隔符。使用重定向保存到另一个文件而不是打印到标准输出。