contando o número de ocorrências em um arquivo da lista de dados

6

Eu tenho um arquivo de dados, como

7
2
10
9
10
3
2
4
2
4
6

Cada linha tem um valor único. Eu quero contar a ocorrência de cada valor. Por exemplo, 10 ocorre duas vezes neste arquivo.

Existe uma maneira simples de fazer isso no Linux sem escrever um programa de contagem formal?

    
por user288609 09.03.2012 / 19:36

1 resposta

10

Sim, existe:

$ sort -n file | uniq -c

Em que -n ativa a classificação numérica e -c ativa a contagem.

Para a sequência acima:

$ echo -e '7\n2\n10\n9\n10\n3\n2\n4\n2\n4\n6' | sort -n | uniq -c 
  3 2
  1 3
  2 4
  1 6
  1 7
  1 9
  2 10

(As primeiras colunas contêm as contagens, as segundas os números.)

    
por 09.03.2012 / 19:38