2013-03-16 110 views
0

我有两个文件,这样在shell中追加两个文件的输出?

文件1

a 
b 
c 

文件2

0 
1 
2 

我要输出

a,0 
b,1 
c,2 

追加两个文件等文件1本

行(N)+ “” +行(n)的文件2
对于每个n,共有n是在这两个文件同

我想要知道是否有任何实用程序在shell中可以帮助我做到这一点,我不想使用java文件读取文件写入这个或任何循环。可以使用awk来完成吗?

+0

看看这个问题,它可能会有你的答案。 http://stackoverflow.com/questions/5467690/how-to-merge-two-files-using-awk – 2013-03-16 21:18:42

回答

4

你想paste

$ paste -d',' file1 file2 
a,0 
b,1 
c,2 

它可以awk做许多方面在这里是一个:

$ awk 'FNR==NR{a[FNR]=$0;next}{print a[FNR]","$0}' file1 file2 
a,0 
b,1 
c,2 
+0

非常感谢!我只想知道是否可以使用awk来完成? – Dude 2013-03-16 21:14:16

+0

@JoeDimaggio是的,它可以通过awk以很多方式完成,请参阅编辑。 – 2013-03-16 21:18:49

2

使用稍微忽略工具pr

$ pr -m -t -s, file1 file2 
a,0 
b,1 
c,2