Assine a Lista Dicas-L
Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.
Procurando uma palavra em vários arquivos numa hierarquia de diretórios
Colaboração: Ricardo Jurczyk Pinheiro
Data de Publicação: 19 de November de 2008
Uma necessidade que tenho vez por outra, no Linux, é descobrir em que arquivo de configuração, dentro do /etc, devo mexer. Como o /etc tem vários diretórios, e dentro deles outros arquivos, acabei desenvolvendo uma solução "rápida e suja", que funciona muito bem:
#!/bin/sh
#
# Pesquisa - Encontra um padrao dentro de uma lista de arquivos
# numa arvore de diretorios
# Autor: Ricardo Jurczyk Pinheiro - ricardojpinheiro@ibest.com.br
# Versao 0.000000000000000000000000000000000000000000000000000001
#
#
if [ $# -ne 2 ]; then
echo "$0 (palavra a ser procurada) (arvore de diretorios)"
exit 1
else
for nome in $(find $2 -type f | sort | uniq); do
echo $nome
cat $nome | grep $1
done
fi
E basta fazer um pipe com o less, que resolve o problema de excesso de informações na tela.
Ricardo Jurczyk Pinheiro - Linux user #82838 - http://estudiodaintrospeccao.blogspot.com
Referências Adicionais
Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.




