首页 > 编程笔记

Linux locate命令:快速搜索文件

locate 命令在 Linux 中用于快速查找文件系统中的文件和目录。

locate 命令相当于“find 路径 -name”的用法,相对于 find 命令,该命令的查询速度更快,它是在后台对系统数据库(/var/lib/locatedb)进行搜索。

locate 命令的缺点是刚创建的文件无法立即查询到,原因是将文件写入系统数据库中需要时间,这个时间是一天,即系统数据库每天会自动更新一次。如果需要避免此情况,可以在使用 locate 命令之前,先使用 updatedb 命令手动更新系统数据库。

locate 命令的语法格式如下:
locate [选项] 文件或目录
locate 命令常用的选项如下:
【实例 1】查找带有“1.txt”名称的所有文件和目录,模糊匹配
# locate 1.txt
/etc/brltty/brl-ts-pb65_pb81.txt
/etc/pki/nssdb/pkcs11.txt
/home/1.txt
/home/zhangsan/.cache/tracker/parser-sha1.txt
/opt/test4/1.txt
……

【实例 2】使用通配符查找特定类型的文件。
# locate -i "*.jpg"
-i 选项使得 locate 命令不区分大小写,并且允许使用通配符。这个命令会搜索所有以 .jpg 结尾的文件,不论它们的文件名中其他部分的字符是什么。

推荐阅读