Escreva no arquivo as palavras mais comuns por contador com linux

Escreva no arquivo as palavras mais comuns por contador com linux

Quero gravar em um arquivo as palavras que aparecem pelo menos X vezes no texto. Por exemplo, para:

a
b
a
c
b

e X = 2 eu obteria:

a
b

Responder1

Isso faz o básico, embora seja bastante lento em uma lista grande de palavras: -

set Count
sort < WordList | uniq | while read w; \
    do [ $(grep -c "^$w$" WordList) -ge $1 ] && echo $w; done

Uma resposta mais rápida (graças a Kamil Maciorowski): –

set Count
sort < WordList | uniq -c | while read c w; do [ $c -ge $1 ] && echo $w; done

Isso pressupõe: -

  • Você definirá suas próprias FileListentradas Count.
  • As palavras são uma por linha em WordList.
  • O caso é significativo (por exemplo, Thee thesão diferentes).
  • Esta é a entrada da linha de comando: em um script, set Countseria omitida e passada como parâmetro.

Isso deve ajudá-lo a começar, embora você quase certamente precise fazer modificações para atender às suas necessidades específicas.

informação relacionada