做运维的朋友都知道,在linux系统日常运维、文件查找时,很多人第一反应就是find命令。但find遍历磁盘、速度极慢,大服务器一搜就要等半天。
今天给大家介绍linux极速文件查找命令,locate简单好用、毫秒出结果,是新手运维必学的基本技能!
locate并不实时扫描磁盘,而是查询系统文件数据库提前把所有文件路径存入索引库,查找直接查表, 速度碾压find。find是 "实时扫盘":从指定目录开始,一个文件一个文件地遍历查找,找到匹配的就输出。
locate是 "查索引库":系统提前把所有文件路径都存在一个数据库里,查找时直接去数据库里搜关键词。
#centos/rhelyum -y install mlocate#ubuntu/debianapt updateapt install plocate -y

现在很多部分linux版本用的是plocate(更快的新版实现),但命令名还是locate,用法完全兼容。
updatedblocate nginx.conf

nginx.conf 的文件。locate -i passwd
locate -b ssh
locate -c log
locate mysql | head -10
locate依靠数据库索引查找,不是实时扫描磁盘
updatedblocate *.log
locate *.conf
locate oldfile
updatedb