grep을 사용하여 문자열을 검색할 때 .git을 피하는 방법

grep을 사용하여 문자열을 검색할 때 .git을 피하는 방법

grep을 사용하여 폴더에서 문자열을 검색하려고 합니다.

grep -r "word" .

하지만 피하고 싶은 .git 파일에 검색이 포함되어 있습니다.

감사해요

답변1

디렉터리를 제외하려면 다음을 수행하세요 .git.

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

이것은 다른 버전이 아닌 GNU에서는 작동 grep하지만 Linux를 사용하는 것 같으니 괜찮을 것입니다.

답변2

'ack'을 시도해보세요(http://beyondgrep.com/), .git, .hg, .csv 등은 그 자체로 무시됩니다.

Subversion, Git 및 기타 VCS 디렉터리와 소스 코드가 아닌 기타 파일을 무시하면서 기본적으로 전체 트리를 검색합니다.

답변3

grep이는 디렉토리 제외를 지원하지 않는 경우에 대한 보다 유연한 솔루션입니다 .

찾다 . -type d -path */.git -prune -o -type f -print0 | xargs -0 -e grep 단어

관련 정보