Você poderia pedir sort
para as linhas exclusivas com base no segundo campo, delimitadas por dois-pontos:
sort -u -t: -k2 < input > output
O trabalho árduo é feito por -u
, que:
output(s) only the first of an equal run
(minha ênfase)
Referência: