Como evitar o .git ao procurar uma string usando grep

1

Estou tentando fazer uma pesquisa em uma pasta para uma string usando grep.

grep -r "word" .

Mas está incluindo uma pesquisa em arquivos .git que eu gostaria de evitar.

Obrigado

    
por AllIsWell 29.10.2014 / 18:35

3 respostas

2

Se você deseja excluir .git diretórios:

grep --exclude-dir=".git" -r "word" .

Isso funciona no GNU grep , não em outras versões, mas como você parece estar usando o Linux, isso deve ser bom.

    
por 29.10.2014 / 18:48
1

Esta é uma solução mais flexível para o caso, se o seu grep não suportar excls dirs:

find . -type d -path */.git -prune -o -type f -print0 | xargs -0 -e grep word

    
por 30.10.2014 / 11:40
1

tente 'ack' ( link ), ele ignora .git, .hg, .csv etc etc por si só:

Searches entire trees by default while ignoring Subversion, Git and other VCS directories and other files that aren't your source code.

    
por 30.10.2014 / 11:44