Procurando uma string em diversos arquivos

Gustavo Paes, 27/01/2010

Tenho utilizado bastante SSH para desenvolvimento de um projeto e várias vezes tenho a necessidade de procurar por alguma função ou string qualquer em diversos arquivos.

Meu editor no Windows faz isso, mas não quando os arquivos estão em FTP. Portanto tenho que fazer a busca via SSH, o que não é das piores coisas. Diria que é até melhor e mais rápido.

Utilizo um “juntado” de find com grep:

find ./ -name "*.php" -print0 | xargs -0 grep "string de pesquisa"

Isso vai procurar a string de pesquisa em todos os arquivos com extensão php do projeto (no caso, ./ quer dizer para procurar em todos os diretórios a partir de onde você digitou o comando). Simples e rápido. Se quiser guardar o resultado em algum arquivo, utilize >>:

find ./ -name "*.php" -print0 | xargs -0 grep "string de pesquisa" >> resultado.txt