如何在Linux中删除重复项(但获得第一个值)

时间:2018-07-13 08:06:48

标签: linux duplicates unique

假设我有一个包含不同行的文件:

aaaaaa
bbbbbb
cccccc
ababab
ababab
ababab
ababab

我想删除重复项,但但要获取第一个值: 预期

aaaaaa
bbbbbb
cccccc
ababab

我尝试过sort file | uniq -u,但是预期结果不包括行ababab的唯一巧合

有帮助吗?

2 个答案:

答案 0 :(得分:-1)

一种方法是:

 awk '!a[$0]++' file

请注意,使用sort|uniq可能会更改文件中各行的顺序。上面的awk行不会。

答案 1 :(得分:-1)

仅使用uniq

$ cat file
aaaaaa
bbbbbb
cccccc
ababab
ababab
ababab
ababab

$ cat file | uniq
aaaaaa
bbbbbb
cccccc
ababab

$ sort file | uniq -u
aaaaaa
bbbbbb
cccccc