请执行下列 *** 作:
grep -rnw '/path/to/somewhere/' -e 'pattern'
-r
还是-R
递归的-n
是行号,并且-w
代表匹配整个单词。-l
可以添加(小写的L)以仅给出匹配文件的文件名。
除了这些,
--exclude,
--include,
--exclude-dir标志可用于高效搜索:
这只会搜索扩展名为.c或.h的文件:
grep --include=*.{c,h} -rnw '/path/to/somewhere/' -e "pattern"
这将排除搜索以.o扩展名结尾的所有文件:
grep --exclude=*.o -rnw '/path/to/somewhere/' -e "pattern"
对于目录,可以通过
--exclude-dir
参数排除特定目录。例如,这将排除dirs dir1 /,dir2 /及其全部与* .dst /匹配的目录:grep --exclude-dir={dir1,dir2,*.dst} -rnw '/path/to/somewhere/' -e "pattern"
这对我来说非常有效,可以达到与您几乎相同的目的。
有关更多选项,请检查
man grep。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)