grep命令是用于检索文件中的关键字词,并返回具体文件路径信息的一个命令。
grep 命令格式:
grep ‘关键字’ 路径 参数
例如:grep ‘baddb’ /home/wwwroot/baddb.com -R或
grep ‘关键字’ 文件
例如:grep ‘baddb’ myfile2.txt
root@localhost ~]# grep 'baddb' /root -R /root/123/dirabc/file.php:baddb.com /root/123/1.txt:baddb
若不使用 -R 参数,则首先要保证命令行中的是“文件”而不是“路径“,因为grep命令会认为”路径“本身是一个文件名,而对其进行检索,当检索不到关键字时,返回为空,这时的返回值就并不是您意向中所需要的了。
root@localhost ~]# grep 'baddb' myfile2.txt baddb.com baddb root@localhost ~]# grep 'baddb' /root/* /root/myfile2.txt:baddb.com /root/myfile2.txt:baddb
(注意这里的/root/* ,/root/是一个目录,但是/root/*中如果有存在文件,则grep命令就会对/root下的所有第一层文件进行检索,但不包含子目录)
grep同样支持通配符的使用
root@localhost ~]# grep 'baddb' * -R 123/dirabc/file.php:baddb.com 123/1.txt:baddb myfile2.txt:baddb.com myfile2.txt:baddb
技巧提示:根据我们不同的需求,决定是否使用 -R 参数,通常情况下,为了得到更完整的搜索结果,一般会使用 -R
对某个类型的文件如.php文件,进行搜索关键字baddb.com
find -name '*.php' | xargs grep baddb.com