Extraindo “count value” depois de usar “uniq -c”

1

Eu estou jogando com pipas bash usando um monte de dados da NBA. Eu estou tentando contar a freqüência de jogadores no Cleveland Cavaliers, e agora meu comando parece algo como cut -d "," -f 2 nba2017-roster.csv | grep "CLE" | uniq -c . A saída é 15 "CLE" .

Eu quero o 15 , não o "CLE" . Como posso fazer isso? Obrigado!

    
por Jake 19.03.2018 / 17:20

1 resposta

0

Com o UNIX, normalmente há mais de uma maneira de fazer isso.

Stéphane mencionado o mais direto método, que é soltar o uniq -c em favor de apenas contar com grep:

... | grep -c CLE

Se você realmente quiser manter a porção uniq -c da linha de comando, então você precisa encontrar uma maneira de remover o "CLE" ou manter apenas o número. O uniq utility é especificado para retornar as contagens no formato:

"%d %s", <number of duplicates>, <line>

então uma (de várias) opções para extrair o <number of duplicates> seria:

.... | uniq -c | awk '{print $1}'

... que diz ao awk para dividir a linha no espaço em branco e imprimir o primeiro campo.

Veja Exclua o comando numérico "uniq -c" criado para o corolário da sua pergunta.

    
por 19.03.2018 / 17:59

Tags