有两个文件如下,file中分别是用户的id,name,sex,file1中分别是用户的id,name,addr:
# cat file
1,tom,m
3,kathy,f
4,luks,m
6,davd,m
# cat file1
1,tom,beijing
2,lily,shannxi
3,khy,shanghai
4,luks,hunan
5,devd,zhejiang
现要求:(1)按两个文件的id,name进行联接
(2)但存在两个文件可能id相同,而name字段不同,对于这样的行,给出提示或是直接不显示。
(3)只显示两个文件共有的id行
编写了个小脚本,正确显示如下:
1,tom,beijing,m
3,kathy and khy are conflict!
4,luks,hunan,m
但尝试使用join命令时,却不能满足要求中的第二条
# join -t "," -1 1 -2 1 -o '1.1 1.2 1.3 2.3' file1 file
1,tom,beijing,m
3,khy,shanghai,f
4,luks,hunan,m
求大神指点!!!!可以对上述的join完善,也可以用其他命令,如awk实现
|