我有以下情况:
file1.dat就像:
1 2
1 3
1 4
2 1
和file2.dat类似:
1 2
2 1
2 3
3 4
我想找到第一个文件中的第二个文件之间的差异。我试过机智grep -v -f file1 file2
,但我的真实文件比这两个更大,当我尝试使用它时,shell永远不会结束。
结果应为:
2 3
3 4
文件已排序,并且它们具有相同数量的元素。有没有找到awk解决方案的方法?
答案 0 :(得分:10)
好像您希望file2
中不在file1
中的行:
$ awk 'FNR==NR{a[$0];next}!($0 in a)' file1 file2
2 3
3 4
然而,使用comm
:
$ comm -13 file1 file2
2 3
3 4