Rom*_*nov 19 grep subdirectory
我有一个名为XYZ的目录,里面有ABC,DEF,GHI目录.我想在所有目录中搜索所有*.c中的模式'writeText'(即XYZ,XYZ/ABC,XYZ/DEF和XYZ/GHI)我可以使用什么grep命令?
另外,如果我只想搜索XYZ,XYZ/ABC,XYZ/GHI而不是XYZ/DEF,我可以使用什么grep命令?
谢谢!
wkl*_*wkl 36
grep -R --include="*.c" --exclude-dir={DEF} writeFile /path/to/XYZ
Run Code Online (Sandbox Code Playgroud)
-R 表示递归,因此它将进入您正在浏览的目录的子目录中--include="*.c"表示"查找以.c" 结尾的文件"--exclude-dir={DEF}表示"排除名为的目录DEF.如果要排除多个目录,请执行以下操作:--exclude-dir={DEF,GBA,XYZ}writeFile 是你正在寻找的模式/path/to/XYZ 是您想要浏览的目录的路径.请注意,这些标志适用于GNU grep,如果您使用的是BSD/SysV/AIX,则可能会有所不同grep.如果您使用的是Linux/GNU grep工具,那么您应该没问题.