当前位置: 首页 > news >正文

每天一个linux命令(18):locate 命令

为什么80%的码农都做不了架构师?>>>   hot3.png

locate 让使用者可以很快速的搜寻档案系统内是否有指定的档案。其方法是先建立一个包括系统内所有档案名称及路径的数据库,之后当寻找时就只需查询这个数据库,而不必实际深入档案系统之中了。在一般的 distribution 之中,数据库的建立都被放在 crontab 中自动执行。

1.命令格式:

Locate [选择参数] [样式]

2.命令功能:

locate命令可以在搜寻数据库时快速找到档案,数据库由updatedb程序来更新,updatedb是由cron daemon周期性建立的,locate命令在搜寻数据库时比由整个由硬盘资料来搜寻资料来得快,但较差劲的是locate所找到的档案若是最近才建立或 刚更名的,可能会找不到,在内定值中,updatedb每天会跑一次,可以由修改crontab来更新设定值。(etc/crontab)

locate指定用在搜寻符合条件的档案,它会去储存档案与目录名称的数据库内,寻找合乎范本样式条件的档案或目录录,可以使用特殊字元(如”*” 或”?”等)来指定范本样式,如指定范本为kcpa*ner, locate会找出所有起始字串为kcpa且结尾为ner的档案或目录,如名称为kcpartner若目录录名称为kcpa_ner则会列出该目录下包括 子目录在内的所有档案。

locate指令和find找寻档案的功能类似,但locate是透过update程序将硬盘中的所有档案和目录资料先建立一个索引数据库,在 执行loacte时直接找该索引,查询速度会较快,索引数据库一般是由操作系统管理,但也可以直接下达update强迫系统立即修改索引数据库。

3.命令参数:

-e   将排除在寻找的范围之外。

-1  如果 是 1.则启动安全模式。在安全模式下,使用者不会看到权限无法看到 的档案。这会始速度减慢,因为 locate 必须至实际的档案系统中取得档案的 权限资料。

-f   将特定的档案系统排除在外,例如我们没有到理要把 proc 档案系统中的档案 放在资料库中。

-q  安静模式,不会显示任何错误讯息。

-n 至多显示 n个输出。

-r 使用正规运算式 做寻找的条件。

-o 指定资料库存的名称。

-d 指定资料库的路径

-h 显示辅助讯息

-V 显示程式的版本讯息

4.使用实例:

实例1:查找和pwd相关的所有文件

命令:

locate pwd

输出:

peida-VirtualBox ~ # locate pwd

/bin/pwd

/etc/.pwd.lock

/sbin/unix_chkpwd

/usr/bin/pwdx

/usr/include/pwd.h

/usr/lib/python2.7/dist-packages/twisted/python/fakepwd.py

/usr/lib/python2.7/dist-packages/twisted/python/fakepwd.pyc

/usr/lib/python2.7/dist-packages/twisted/python/test/test_fakepwd.py

/usr/lib/python2.7/dist-packages/twisted/python/test/test_fakepwd.pyc

/usr/lib/syslinux/pwd.c32

/usr/share/help/C/empathy/irc-join-pwd.page

/usr/share/help/ca/empathy/irc-join-pwd.page

/usr/share/help/cs/empathy/irc-join-pwd.page

/usr/share/help/de/empathy/irc-join-pwd.page

/usr/share/help/el/empathy/irc-join-pwd.page

 

实例2: 搜索etc目录下所有以sh开头的文件 

命令:

locate /etc/sh

输出:

peida-VirtualBox ~ # locate /etc/sh

/etc/shadow

/etc/shadow-

/etc/shells

peida-VirtualBox ~ #

实例3:搜索etc目录下,所有以m开头的文件

命令:

locate /etc/m

输出:

peida-VirtualBox ~ # locate /etc/m

/etc/magic

/etc/magic.mime

/etc/mailcap

/etc/mailcap.order

/etc/manpath.config

/etc/mate-settings-daemon

转载于:https://my.oschina.net/cpuser/blog/679678

相关文章:

  • android微信支付
  • 13 款惊艳的 Node.js 框架——第1部分
  • shell学习笔记2---awk字符串处理(原创)
  • 各主流浏览器的区别
  • java获取真实ip地址
  • 简单查询(1)
  • 详解Zoosk千万用户实时通信背后的开源技术[转]
  • 【转】jvm 内存模型及内存调优
  • UESTC 75 The Queen's New Necklaces
  • 冯·若依曼体系结构
  • MySQL学习总结(二)数据库以及表的基本操作
  • 关于Android中设置闹钟的相对比较完善的解决方案
  • Swift 中的尾递归和蹦床
  • 关于学习了《构建之法》的若干存在疑惑的问题
  • spring 整合 struts
  • 【Leetcode】101. 对称二叉树
  • 77. Combinations
  • canvas 五子棋游戏
  • HashMap剖析之内部结构
  • HTTP请求重发
  • HTTP中的ETag在移动客户端的应用
  • mockjs让前端开发独立于后端
  • Node + FFmpeg 实现Canvas动画导出视频
  • Objective-C 中关联引用的概念
  • React+TypeScript入门
  • Redis的resp协议
  • SpiderData 2019年2月16日 DApp数据排行榜
  • TypeScript迭代器
  • yii2权限控制rbac之rule详细讲解
  • 回顾2016
  • 基于Mobx的多页面小程序的全局共享状态管理实践
  • 如何选择开源的机器学习框架?
  • 十年未变!安全,谁之责?(下)
  • 数据仓库的几种建模方法
  • 小程序测试方案初探
  • 写代码的正确姿势
  • 阿里云ACE认证学习知识点梳理
  • 国内唯一,阿里云入选全球区块链云服务报告,领先AWS、Google ...
  • 容器镜像
  • (4)事件处理——(2)在页面加载的时候执行任务(Performing tasks on page load)...
  • (cos^2 X)的定积分,求积分 ∫sin^2(x) dx
  • (八)光盘的挂载与解挂、挂载CentOS镜像、rpm安装软件详细学习笔记
  • (顶刊)一个基于分类代理模型的超多目标优化算法
  • (附源码)springboot 智能停车场系统 毕业设计065415
  • (附源码)springboot高校宿舍交电费系统 毕业设计031552
  • (十八)devops持续集成开发——使用docker安装部署jenkins流水线服务
  • (转)eclipse内存溢出设置 -Xms212m -Xmx804m -XX:PermSize=250M -XX:MaxPermSize=356m
  • . NET自动找可写目录
  • .gitignore文件---让git自动忽略指定文件
  • .NET Core WebAPI中封装Swagger配置
  • .NET Core 网络数据采集 -- 使用AngleSharp做html解析
  • .NET 常见的偏门问题
  • .net 怎么循环得到数组里的值_关于js数组
  • .NET 中创建支持集合初始化器的类型
  • .NET/C# 反射的的性能数据,以及高性能开发建议(反射获取 Attribute 和反射调用方法)