usando grep para contar identificadores exclusivos com limite de palavra

1

Eu tenho um arquivo no seguinte formato com milhões de linhas

KABC XXX 111 222
KDEF XXX 123 456
KGHI XXX 567 890
KABC XXX 124 267
KDEF XXX 190 478
KGHI XXX 095 609
KABC XXX 001 902
KDEF XXX 013 986
KGHI XXX 792 001

etc

Existem muito mais linhas, mas isso é apenas para simplificar. Como posso ter apenas os identificadores exclusivos impressos? Por exemplo

KABC
KDEF
KGHI
    
por Alwin Solanky 22.03.2017 / 17:31

3 respostas

4
cut -d' ' -f1 /path/to/file | sort -u

ou

awk '! data[$1] { print $1; data[$1]="seen" }' /path/to/file
    
por 22.03.2017 / 17:35
0
perl -lane '$h{$F[0]}++ or print $F[0]' yourfile
    
por 23.03.2017 / 13:49
-1

use o awk cmd e o comando sort

cat file | awk '{print $1}' | sort | uniq -c | sort -n
    
por 23.03.2017 / 11:15