2015-07-05 38 views
0

我有两个文件。以逗号分隔的sed awk加入两个文件

FILE1.TXT

example1 
example2 
example3 

FILE2.TXT

testing1 
testing2 
testing3 

我想加入这两个文件中的值到隔档新的逗号,以输出

想要的输出

example1,testing1 
example2,testing2 
example3,testing3 

任何人都可以帮助在awk/sed中做到这一点? 谢谢

回答

3

你可以用paste

paste -d, file1 file2 
example1,testing1 
example2,testing2 
example3,testing3 

更新:使用awk的,你可以这样做:

awk -v OFS=, 'FNR==NR{a[++i]=$0; next} {print a[FNR], $0}' file1 file2 
example1,testing1 
example2,testing2 
example3,testing3 
+0

对不起,我是在Windows中,如何添加粘贴命令..使用git bash的,因为贴:未找到命令 – SweetCode

+1

谢谢你,为帮助..使用awk工作现在.. – SweetCode

0

这可能会为你工作(GNU SED):

sed 'Rfile2' file1 | sed 'N;y/\n/,/' 

第一个sed脚本从file1读取一行,然后从file2读取一行。第二个脚本使用此输出,并一次读取两行,用逗号替换行之间的换行符。

N.B.这期望每个文件1/2都是相同的长度。

0

您还可以使用pr以外paste命令

[[email protected] tmp]$ cat file1 
example1 
example2 
example3 

[[email protected] tmp]$ cat file2 
testing1 
testing2 
testing3 

[[email protected] tmp]$ pr -mtJS',' file1 file2 
example1,testing1 
example2,testing2 
example3,testing3 
+0

如果file1和file2记录有匹配的东西,可以根据匹配记录进行pr连接吗? –

+1

它只是盲目地加入公关不会看到任何匹配 –