如果包含在另一个文件中,删除行

时间:2014-07-14 15:24:57

标签: bash scripting sh

我有一个电话簿文件(F1):

max;123456
eve;234567
john;443322

文件F2中的数字列表:

123456
234567
678009
443322
342354

我想在F2中找到那些不在F1中的数字(678009和342354)。 我发现的不是我想要的。感谢任何帮助(代码或链接)。 谢谢,问候。

2 个答案:

答案 0 :(得分:0)

使用awk:

awk -F';' 'NR==FNR{a[$2]++;next}!a[$0]' F1 F2

输出:

678009
342354

答案 1 :(得分:0)

许多方法之一:

comm  -13 <(cut -f2 -d';' F1| sort -u ) <(sort -u F2)

输出

342354
678009