모든 숨겨진 디렉토리를 제외하려면 grep 및 pcregrep을 사용하십시오.

모든 숨겨진 디렉토리를 제외하려면 grep 및 pcregrep을 사용하십시오.

재귀 검색에서 모든 숨겨진 디렉터리를 제외하려고 합니다.

나는 .*/\..*이것이 숨겨진 디렉토리와 일치해야 한다고 생각했고 이것은 find와 함께 작동하지만 grep은 그렇게 생각하지 않습니다.

pcregrep -rnI -C 5 --exclude-dir='.*/\..*' '^\s*async def' .

grep -rnIP -C 5 --exclude-dir=*/.* '^\s*def' .

내가 여기서 뭘 잘못하고 있는 걸까?

아, ripgrep, silver searcher 등은 알아요. 문제는 grep과 pcregrep에 관한 것입니다.

답변1

그리고 pcregrep:

pcregrep -r --exclude-dir='^\..' pattern .

그리고 grep:

grep -r --exclude-dir='.[^.]*' pattern .

참고하시고 --exclude-dir의미가 다릅니다. 자세한 내용은 해당 설명서를 읽어보십시오.pcregrepgrep

관련 정보