删除文本文件中的重复条目

nic*_*sfo 0 linux bash text-processing

我使用两个请求创建了一个 txt 文件,一个是 LDAP,一个是 SQL。两次请求的结果存储在同一个txt文件中。

txt 文件如下所示:

user1@domain.fr
user2@domain.fr
user3@domain.fr
user1@domain.fr
user4@domain.fr
Run Code Online (Sandbox Code Playgroud)

因为一个用户可以在两个数据库中,所以我需要使用 bash 删除重复条目。
我该怎么做?

Ste*_*itt 5

如果你不介意你的文件最终被排序,那就对它进行排序和过滤;任何一个

sort -u file
Run Code Online (Sandbox Code Playgroud)

如果你sort支持它,或者

sort file | uniq
Run Code Online (Sandbox Code Playgroud)

如果没有,您将在标准输出中获得唯一电子邮件地址的排序列表。

如果您想按原始顺序保留地址,请使用awk

awk '!(count[$0]++)' file
Run Code Online (Sandbox Code Playgroud)