比find快N多倍的查找命令

使用linux操做系统的人,通常都用过文件查找命令find,在文件数量很是庞大的时候,好比在高通的android工程项目中,目录大小有十几个G,文件数量很是多,用find命令就太慢了。html

下面介绍一个比find快得多的命令,搜索任何文件几乎都能在一秒内返回。linux

mlocateandroid

这个命令的原理是,先为文件系统建立索引数据库,mlocate只是搜索索引,因此速度快数据库

准备工做:建立数据库(建立索引)操作系统

sudo updatedb  只有root权限才能执行,他会扫描整个系统,为整个系统建立索引,数据库在/var/lib/mlocate/mlocate.dbhtm

这个过程会比较慢,能够在中午或晚上跑一下,执行完了上面的命令就能够使用mlocate搜索文件了索引

使用命令get

mlocate  abc.txt原理

mlocate  -ie  abc.txt   若是 abc.txt已经删除了,使用-e会检查文件是否真实存在,而没必要updatedb;-i,忽略大小写date

mlocate  /etc/*profile   在/etc中查找相似profile的文件

注意:对于新增文件应该先updatedb更新数据库,不然就搜不到,固然更新索引时,执行updatedb仍是比较快的

注:locate和mlocate均可以,mlocate更好

本文原创地址:https://www.linuxprobe.com/linux-find-locate.html

相关文章
相关标签/搜索