locate命令的功能是快速查找文件或目录。与find命令进行全局搜索不同,locate命令是基于数据文件(/var/lib/locatedb)进行的定点查找,由于缩小了搜索范围,因此速度快很多。

要想让locate命令查询的结果更加准确,建议定期执行updatedb命令对数据库文件进行更新。

语法格式:locate 参数 文件名

常用参数:

-b仅匹配文件名 -r使用正则表达式
-c不输出文件名-S显示数据库的统计信息
-d设置数据库所在目录-w匹配完整的文件路径
-i忽略大小写--help显示帮助信息
-l限制最大查找数量--version显示版本信息
-q静默执行模式  

参考示例

搜索带有指定关键词的文件:

[root@linuxcool ~]# updatedb 
[root@linuxcool ~]# locate network 
/dev/network_latency 
/dev/network_throughput 
/etc/networks 
/etc/libvirt/qemu/networks 
/etc/libvirt/qemu/networks/autostart 
/etc/libvirt/qemu/networks/default.xml
………………省略部分输出信息……………… 

在指定的目录下搜索带有指定关键词的文件:

[root@linuxcool ~]# locate /etc/network 
 /etc/networks
Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。