shell命令locate

介绍

linux上做维护的时候经常会去查找某个文件路径 如果不需要特殊的查找匹配(比如时间 大小...) 格式化的输出(此处用find) 建议用locate命令

因为locate命令查找速度非常的快

locate查找文件路径会通过一个数据库/var/lib/mlocate.db/* (包括系统内所有档案名称及路径的数据库)

ps: find是搜索磁盘查找文件 

安装,用法

yum install mlocate -y

使用前手动建立,更新数据库

updatedb

#有时候会发现命令找不到文件 数据库需要更新

updatedb

#默认文件名前后会加通配符*
locate pattern = (locate *pattern*)

#只匹配文件名 去通配符
locate -b 'pattern'

#忽略文件名大小写
locate -i pattern

#使用基本正则匹配模式
locate -r pattern

#使用扩展正则匹配模式
locate --regex pattern

配置文件

updatedb升级数据库前会先读取配置文件的内容 然后再去磁盘搜索文档名的动作

配置文件共有四行

PRUNE_BIND_MOUNTS = (yes|no) 是否进行查找过滤

PRUNEFS 需要过滤的文件系统(默认过滤掉nfs 所有你会发现nfs下的文件找不到)

PRUNENAMES 过滤的文件名

PRUNEPATHS 过滤的路径

 

原文地址:https://www.cnblogs.com/metasequoia/p/5081238.html