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

时间:2022-12-25 23:19:02

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开头的文件

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

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

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

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

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

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

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

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

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

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

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

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

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