grep
grep大都主要用来进行对一段输出的关键字定位,但是这个命令也可以通过使用某些参数来达到文件夹文件内容遍历的效果。
grep -nr "str" path
参数说明:
- grep: 就是grep命令
- -nr: n是line number行号,r是recursive,可以理解为遍历文件文件夹 “str”: 双引号里面的str就是要查找的内容,用双引号何以使用空格和一些字符进行查找
- path: path就是查找路径,默认是./,也就是当前目录开始,也可以手动指定目录
find、xargs和grep组合搜索
find用来查找文件的;
xargs可以将标准输入作为另一个命令的参数;
grep上面已经解释过了。
使用find来循环查找文件,使用他输出的文件名作为参数给xargs,xargs再将文件名作为grep的参数输入,使用grep来查找文件内容进行定位
find path -name "PATTEN" | xargs grep -n "str" | grep "str"
find /home/$USER/.config -name "*.sh" | xargs grep "/bin/bash" | grep "/bin/bash"