grep 查找字符

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
点赞

发表评论