设为首页收藏本站language→→ 语言切换

鸿鹄论坛

 找回密码
 论坛注册

QQ登录

先注册再绑定QQ

查看: 619|回复: 4
收起左侧

比find快N多倍的查找命令

[复制链接]
发表于 2018-10-6 13:04:34 | 显示全部楼层 |阅读模式

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

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

mlocate

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

准备工作:创建数据库(创建索引)

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

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

使用命令

mlocate  abc.txt

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

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

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

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

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


发表于 2018-10-6 14:10:20 | 显示全部楼层
感谢楼主分享!
沙发 2018-10-6 14:10:20 回复 收起回复
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2024-4-24 02:21 , Processed in 0.061078 second(s), 9 queries , Redis On.  

  Powered by Discuz!

  © 2001-2024 HH010.COM

快速回复 返回顶部 返回列表