从文本文件中删除所有重复项而不进行排序

从文本文件中删除所有重复项而不进行排序

简而言之,我有一个文件,其中包含我不知道的文本行,例如

abaa
dddd
bbbb
cccc
abaa
aaaa
abaa

我想要得到的结果是

dddd
bbbb
cccc
aaaa

所有重复项都被完全删除。如果一行文本在其他地方重复,请删除该行以及后面的所有重复内容。这可能吗?我的所有搜索都显示已删除重复项的输出,仅留下一个我想删除的实例。

答案1

这种方法需要两次遍历文件:一次用于计算每行出现的次数,一次用于打印仅出现一次的行:

awk 'NR == FNR {count[$0]++; next}; count[$0] == 1' file file

相关内容