1 locate 搜文件数据库

image.png

image.png

只能搜索文件。

运行locate httpd.conf,提示-bash: locate: command not found错误。
则需要安装mlocate软件包:yum install mlocate

搜索,提示locate: can not stat () `/var/lib/mlocate/mlocate.db’: 没有那个文件或目录。
忘生成数据库了,执行:updatedb

2 whereis 搜命令

image.png

比如搜索ls所在位置的方法:
image.png

不过whereis和which都只能看到外部安装的命令,像shell内置的cd是看不到的。

image.png
ls等命令都是在PATH里找到的

3 find 搜文件

image.png

image.png

image.png

image.png

image.png
(这里有个不太合理的地方,KB要写小写的k、MB要写大小的M)
如果不写单位,默认单位是扇区数。

来点复杂的~
image.png

4 grep 检索文件中的内容

image.png

global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来

(赵永科《caffe》p85)

-n 显示行号,便于定位
-H 显示文件名,便于定位
-R 递归查找每个子目录,适合工程较大、分多个目录存放的场景

比如要查REGISTER_LAYER_CREATOR,可以输入:
grep -n -H -R “REGISTER_LAYER_CREATOR”

image.png