Como eu divido as linhas em látex por um certo caractere?

1

Eu tenho um monte de linhas semelhantes a:

Jasmine, Kellyn, Shelly; Applebees

Sarah; Walmart

Helen, Max, Sam; Dell

Muitos desses nomes se repetem. Eu preciso descobrir os 10 principais nomes usados. Eu tenho tentado usar o cut -d "," restaurants.txt | classificar | uniq -c | sort -rn | cabeça -n 10

    
por blurble 07.02.2014 / 05:49

1 resposta

0

Tudo bem, isso não é bonito, mas pelo menos funciona.

 cat restaurants.txt | sed 's/;.*//' |  tr "," "\n" | tr " " "\n" | grep -v '^$' |  sort | uniq -c | sort -r  

2 Sam
2 Max
1 Shelly
1 Sarah
1 Kellyn
1 Jasmine
1 Helen

Explicação:% sed 's/;.*//' remove todo o texto após os pontos e vírgulas como (; Applebees)

tr "," "\n" uniq só funciona por linha, então substitua vírgulas por novas linhas

tr " " "\n" limpa todos os espaços extras, dando a eles sua própria linha (opcional)

grep -v '^$' Exclui todas as linhas vazias

sort classifica

uniq -c conta duplicatas

sort -f organiza em ordem decrescente

    
por 07.02.2014 / 06:44

Tags