By Marcos Oliveira,

Como Contar Palavras de um arquivo com Shell Script

Olá galera, acabei de criar essa função , serve pra contar quantas vezes uma determinada palavra aparece num texto(arquivo) modo de utilizar entre outros dados, no próprio cabeçalho do Script, cada linha explicada nos comentários.

#!/bin/bash
# ---------------------------------------------------------------
# ./contapalavra
#
# Shell Scripting: Função para contar palavra num arquivo
#
# Uso: contapalavras [palavra] [arquivo]
#
# Ex.: ./contapalavras MinhaPalavra arquivo.txt
#
# Autor: Marcos da Boa Morte, www.terminalroot.com.br
# Desde: Sáb 29 Jun 2013 22:53:28 BRT 
# Versão: 1
# Licença: GPL
# ----------------------------------------------------------------
contapalavra(){
 # Deixa todas as palavras numa única linha
 sed 's/ /\n/g' $2 | 
 
 # apaga todas as linhas em branco
 sed '/^$/d' | 
 
 # Remove caracteres que não são parte de palavras
 sed 's/[^A-Za-z0-9ÀàÁáÂâÃãÉéÊêÍíÓóÔôÕõÚúÇç_-]/ /g' | 
 
 # Ordena as palavras em ordem alfabética
 sort -n | 
 
 # exibe quantidade de vezes que aparece em cada linha a palavra X
 uniq -c | 
 
 # ordena por numeros a quantidade de uniq
 sort -n | 
 
 # exibe as linhas que contém a palavra procurada
 # n (mostra o número de cada linha; 
 # i ignora a diferença entre letras maiúsculas e letras minúsculas
 egrep -ni "$1" | 
 
 # o egrep(pós uniq) exibe [numero: palavra], então o cut retira o : e o que vem antes dele
 cut -d: -f2 | 
 
 # troca os espaços vazios por quebra de linha
 sed 's/ /\n/g' | 
 
 # remove novamente as linhas em branco
 sed '/^$/d' | 
 
 #exibe o número(que está na primeira linha)
 sed -n 1p
 
 # exibição intuitiva, caso queira.
 #echo "A palavra ($1) aparece: "$(sed -n 1p) " vezes no arquivo: "$2
}

# chama a função e passa os parâmetros para ela.
contapalavra $1 $2


Sobre o Autor

Marcos Oliveira

A alegria está na luta, na tentativa, no sofrimento envolvido e não na vitória propriamente dita. A força não provém da capacidade física. Provém de uma vontade indomável.
Mahatma Gandhi


Dê você também uma Contribuição
Compartilhe nas suas Redes Sociais!




Inscreva-se no Nosso Canal do Youtube



DioStore - A sua loja geek!

A melhor Loja Geek do Brasil. Os produtos mais criativos, como: canecas, camisetas, capachos, almofadas, etc. Venha conhecer a loja nerd mais legal da internet. Nós criamos produtos geek e nerd de alta qualidade para um público apaixonado, autodidata, tecnológico e absolutamente exigente.



Curso Extremamente Avançado em Shell Script Bash

Você irá descobrir técnicas avançadas de escrever em Shell Script. Como criar instaladores para distribuições Linux, Animações, Documentações, além de tudo sobre Processos em sistemas tipo UNIX, detalhes sobre Comandos Avançados e Muito Mais !



Crie Sua Própria Promoção

Customize seus Pacotes de Treinamentos obtendo descontos muito em conta!