我正在为grep某些目录编写一些脚本,但是这些目录包含各种文件类型。
grep
我想grep只是.h和.cpp现在,但也许其他几个人的未来。
.h
.cpp
到目前为止,我有:
{ grep -r -i CP_Image ~/path1/; grep -r -i CP_Image ~/path2/; grep -r -i CP_Image ~/path3/; grep -r -i CP_Image ~/path4/; grep -r -i CP_Image ~/path5/;} | mailx -s GREP email@domain.com
谁能告诉我我现在如何只添加特定的文件扩展名?
只需使用--include参数,如下所示:
--include
grep -r -i --include \*.h --include \*.cpp CP_Image ~/path[12345] | mailx -s GREP email@domain.com
那应该做你想要的。
从下面的HoldOffHunger答案中获取解释:
grep:命令
-r:递归地
-r
-i:忽略大小写
-i
--include \*.cpp:所有* .cpp:C ++文件(如果文件名中带有星号的目录,请使用\进行转义)
--include \*.cpp
./:从当前目录开始。
./