linux locate 用目录,linux学习笔记:locate,find命令总结(一)

66170376_1.jpg

linux中locate,find命令都是在文件系统中查找符合条件的文件,但是locate是利用数据库来搜寻数据,所以速度相对比较快。

locate依赖于事先构建好的索引库,每天系统在空闲时间都会通过周期性任务自动完成索引库的更新,手动更新索引库就需要执行命令updatedb,也正是因为依赖于数据库,造成locate查询出来的结果可能会跟执行查询命令时的实际情况有出入,并且其为模糊查找。

locate命令格式:

locate [OPTION]... [PATTERN]...

常用选项:

-b,--basename:只匹配路径中的基名;

-c,--count:统计出共有多少个符合条件的文件;

-r, --regexp REGEXP:查询时用基本的正则表达式;

-i, --ignore-case:忽略大小写查询;

注意:索引构建过程需要遍历整个根文件系统,及其消耗资源。

find是实时查找工具,通过遍历指定起始路径下文件系统层级结构完成文件查找,其查找速度比较慢,但为精确查找。

find用法:

格式:find [OPTIONS] [查找起始路径] [查找条件] [处理动作]

find [PATH] [option] [action]

查找起始路径:指定具体搜索目标起始路径,默认为当前目录;

查找条件:指定的查找标准,可以根据文件名,大小,类型,从属关系,权限等标准进行,默认为找出指定路径下的所有文件;

处理动作:对符合条件的文件做出操作,如删除,重命名等

以下对查找条件做出略微详细的说明:

根据文件名查找:

-name pattern

-iname pattern:同-name,但是不区分大小写;

此处的pattern支持glob风格的通配符,如*,?,[],[^]等;

-regex pattern:基于正则表达式查找,匹配到的是整个路径,而非文件名;

根据文件从属关系查找:

-user uname:查找属主为指定用户的文件;

-group gname:查找属组为指定组的文件;

-uid n:查找属主为指定UID的文件;

-gid n:查找属组为指定GID的文件;

-nouser:查找没有属主的文件;

-nogroup:查找没有属组的文件;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值