sexta-feira, 27 de abril de 2012

COMO PESQUISAR DENTRO DE ARQUIVOS SEM PRECISAR ABRI-LOS

Estava configurando o SquidGuard e me deparei com a questão de que a blacklist que estava utilizando é muito extensa, cada arquivo possuía pelo menos umas 1000 entradas em alguns deles até mais, são url's que serão filtradas pelo squidguard, mas como descobrir qual destes arquivos continha url's ".br" ou ".com.br" ou até mesmo sites conhecidos que são acessados frequentemente para eliminar as entradas dos arquivos para que o squidguard não os bloqueasse, e assim adiantaria meu serviço, mas notei ao abrir os arquivos um a um era muito trabalhoso, procurar linha por linha as entradas que precisava apagar, e isso teria que ser repetido quantas vezes fossem necessárias em todos os arquivos, então a solução que encontrei foi utilizando o comando pude encontrar os arquivos que continha as entradas que procurava, economizando tempo ao abrir somente os arquivos que os continha tais entradas, veja o comando que utilizei logo abaixo.
P.S.: o comando tem que ser executado dentro do diretório dos arquivos que você quer pesquisar, por exemplo, se o arquivo estiver em uma pasta por nome "/file" dentro da /home/do-usuario então é preciso entrar nela assim:
:~# cd /home/do-usuario/file
: /home/do-usuario/file# e aqui digite o comando abaixo.
# find ./* -type f -exec grep -l palavra-ou-expressao-a-pesquisar {} \;
Existe outras formas de pesquisar com o mesmo intuito, mas com comandos diferentes quando tive-los testados postarei aqui.
Até breve.