1

Я пытаюсь сделать поиск в папке для строки, используя grep.

grep -r "word" .

Но это в том числе поиск в файлах .git, которых я хотел бы избежать.

Спасибо

3 ответа3

2

Если вы хотите исключить каталоги .git :

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

Это работает на GNU grep , а не на других версиях, но так как вы, похоже, используете Linux, это должно быть хорошо.

1

Это более гибкое решение для случая, если ваш grep не поддерживает исключение dirs:

находить . -type d -path */. git -prune -o -type f -print0 | xargs -0 -e grep word

1

попробуйте 'ack' ( http://beyondgrep.com/ ), он игнорирует .git, .hg, .csv и т. д. сам по себе:

По умолчанию ищет все деревья, игнорируя при этом Subversion, Git и другие каталоги VCS и другие файлы, которые не являются вашим исходным кодом.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .