
我试图从递归搜索中排除所有隐藏目录。
我认为.*/\..*
这应该与隐藏目录匹配,并且这确实适用于 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
不同。详细内容请阅读相应的手册。pcregrep
grep