我需要比较两个文件。 unix中的File1.txt和File2.txt。 File1.txt中存在的值而不是File2.txt中的值必须写入diff.txt。我想我们只能使用awk实现。任何人都可以指导我实现这一目标吗?
FILE1.TXT
apple
bat
cat
FILE2.TXT
apple
cat
diff.txt
bat
答案 0 :(得分:5)
试试这个单行:
awk 'NR==FNR{a[$0];next}!($0 in a)' file2 file1 > diff.txt
答案 1 :(得分:1)
diff file2 file1 | perl -lne 'print $1 if(/^\> (.*)/)'
答案 2 :(得分:0)
这是创建“comm”的工作:
comm -23 file1 file2
man comm了解详情。需要注意的是输入文件必须按照你的方式进行排序。