如何只打印具有唯一字段的行?

Gep*_*ada 1 python bash unique

例如......如果我有这样的文件:

A   16  chr11   36595888
A   0   chr1    155517200
B   16  chr1    43227072
C   0   chr20   55648508
D   0   chr2    52375454
D   16  chr2    73574214
D   0   chr3    93549403
E   16  chr3    3315671
Run Code Online (Sandbox Code Playgroud)

我只需要打印具有唯一第一列的行:

B   16  chr1    43227072
C   0   chr20   55648508
E   16  chr3    3315671
Run Code Online (Sandbox Code Playgroud)

它类似于awk '!_[$1]++',但我想删除所有具有非唯一拳头场的线.

最好使用Bash和python解决方案.

the*_*amk 7

在bash中,假设第一列已修复为(3):

sort input-file.txt | uniq -u -w 3
Run Code Online (Sandbox Code Playgroud)

'-u'选项仅打印唯一的行,' - w 3'比较前3个字符.