Linux学习笔记--locate命令(文件搜索命令)


locate,定位的意思,作用是让使用者可以快速的搜寻系统中是否有指定的文件。

locate 命令特点:

1) "locate"的速度比"find"快,因为它并不是真的查找文件,而是查数据库。
2) 新建的文件,我们立即用"locate"命令去查找,一般是找不到的,
   因为数据库的更新不是实时的,数据库的更新时间由系统维护。
3) "locate"命令所搜索的后台数据库在"/var/lib/mlocate"这个目录下,
   可能有些Linux系统位置不同,具体我们可以用"locate locate"查询。
4) 我们可以用"updatedb"命令来更新数据库,这样就能查询到刚才新建的文件了。
5) 并不是所有的目录下的文件都会用"locate"命令搜索到,
   "/etc/updatedb.conf"这个配置文件中,配置了一些"locate"命令的一些规则。

/etc/updatedb.conf配置文件解析:

1) PRUNE_BIND_MOUNTS = "yes"
   值为"yes"时开启搜索限制,此时,下边的配置生效;为"no"时关闭搜索限制。
2) PRUNEFS =
   后边跟搜索时,不搜索的文件系统。
3) PRUNENAMES = 
   后边跟搜索时,不搜索的文件类型。
4) PRUNEPATHS = 
   后边跟搜索时,不搜索的文件所在的路径。

1. 命令格式:

locate [选项] 文件名

2. 常用选项:

"locate -c" 查询指定文件的数目。(c为count的意思)
"locate -e" 只显示当前存在的文件条目。(e为existing的意思)
"locate -h" 显示"locate"命令的帮助信息。(h为help的意思)
"locate -i" 查找时忽略大小写区别。(i为ignore的意思)
"locate -n" 最大显示条数" 至多显示"最大显示条数"条查询到的内容。
"locate -r" 使用正则运算式做寻找的条件。(r为regexp的意思)

3. 常用范例:

1) 查找etc目录下所有以sh开头的文件

这里写图片描述<喎?http://www.Bkjia.com/kf/ware/vc/" target="_blank" class="keylink">vcD4NCjxwcmUgY2xhc3M9"brush:sql;"> 2) 查找etc目录下所有以sh开头的文件的数目

这里写图片描述

3) 查找etc目录下所有以sh开头的文件,并最多显示2条

这里写图片描述

4) 新建的文件,更新数据库后就能查询到了

这里写图片描述

5) 查找文件时,不区分大小写

这里写图片描述

6) 使用正则表达式,查找以akefile结尾的文件,并最多显示5条

这里写图片描述

7) 只显示当前存在的文件条目

这里写图片描述

相关内容