我想比较两个文件。
如果file2
的值与file1
的前两列匹配,则需要从file1
删除整行,并将结果打印到output
,如下所示。
以下包含file1
:
1,aplle,melle,cyborg
2,bplle,less,vgm
3,minipl,vicy,bgm
4,tag,mob,calic
6,Centurion,sa,hh
以下包含file2
2,bplle
4,tag
5,Centurion
output
必须包含以下内容:
1,aplle,melle,cyborg
3,minipl,vicy,bgm
6,Centurion,sa,hh
是否可以实现此awk
?
答案 0 :(得分:1)
这个awk应该可以工作:
awk -F, 'FNR==NR{a[$1,$2];next} !(($1,$2) in a)' file2 file1
1,aplle,melle,cyborg
3,minipl,vicy,bgm
6,Centurion,sa,hh
答案 1 :(得分:0)
这也可以:grep -Fwvf file2 file1
-F
将PATTERN解释为固定字符串列表,-w
只选择那些包含构成整个单词的匹配的行。-v
反转匹配感,选择不匹配的行。-f文件
从FILE获取模式,每行一个。