命令用途
  1. locate 让使用者可以很快速的搜寻档案系统内是否有指定的档案。
  2. 其方法是先建立一个包括系统内所有档案名称及路径的数据库,之后当寻找时就只需查询这个数据库,而不必实际深入档案系统之中了。
  3.  
  4. 所以你要知道:
  5. 1. locate的速度比find快,因为它并不是真的查找文件,而是查数据库
  6. 2. locate的查找并不是实时的,而是以数据库的更新为准,一般是系统自己维护
  1. 3. 升级数据库命令:locate -- u
  2.  
  3. 命令用法
  1. #查看locate版本信息-V
  1. bixiaopeng@bixiaopeng-To-be-filled-by-O-E-M:~$ locate -V
  2. mlocate 0.25
  3. Copyright (C) 2007 Red Hat, Inc. 保留所有权利。
  4. 本软件在 GPL v.2 下发布。
  5.  
  6. 本程序不提供任何担保,在法法律允许的范围内予以排除。

#查看locate帮助信息

  1. bixiaopeng@bixiaopeng-To-be-filled-by-O-E-M:~$ locate -h
  2. 用法: locate [OPTION]... [PATTERN]...
  3. mlocate数据库中搜索条目.
  4.  
  5. -b, --basename 匹配唯一的路径名称的基本文件名
  6. -c, --count 只显示找到条目的号码
  7. -d, --database DBPATH DBPATH 替代默认的数据库(/var/lib/mlocate/mlocate.db)
  8. -e, --existing 只显示当前存在的文件条目
  9. -L, --follow 当文件存在时跟随蔓延的符号链接 (默认)
  10. -h, --help 显示本帮助
  11. -i, --ignore-case 匹配模式时忽略大小写区别
  12. -l, --limit, -n LIMIT 限制为 LIMIT项目的输出 (或 计数)
  13. -m, --mmap 忽略向后兼容性
  14. -P, --nofollow, -H 当检查文件时不跟随蔓延的符号
  15. 链接
  16. -0, --null 输出时以 NUL 分隔项目
  17. -S, --statistics 不搜索项目,显示有关每个已用数据库的统计信息
  18. -q, --quiet 不报告关于读取数据库的错误消息
  19. -r, --regexp REGEXP 搜索基本正则表达式 REGEXP 来代替模式
  20. --regex 模式是扩展正则表达式
  21. -s, --stdio 忽略向后兼容性
  22. -V, --version 显示版本信息
  23. -w, --wholename 匹配完整路径名 (默认)
  24.  
  25. bug 报告给 mitr@redhat.com.
  1. # 查找etc目录下所有以sh开头的文件
  1. bixiaopeng@bixiaopeng-To-be-filled-by-O-E-M:~$ locate /etc/sh
  2. /etc/shadow
  3. /etc/shadow-
  4. /etc/shells
  1. #查看soft目录下以android开头的文件,限定只显示5个,使用 -n
  1. bixiaopeng@bixiaopeng-To-be-filled-by-O-E-M:~$ locate -n 5 /soft/android
  2. /home/bixiaopeng/soft/android-studio
  3. /home/bixiaopeng/soft/android-studio-bundle-130.737825-linux.tgz
  4. /home/bixiaopeng/soft/android-studio/Install-Linux-tar.txt
  5. /home/bixiaopeng/soft/android-studio/LICENSE.txt
  6. /home/bixiaopeng/soft/android-studio/NOTICE.txt

#查找时区分大小写

  1. bixiaopeng@bixiaopeng-To-be-filled-by-O-E-M:~$ locate makefile
  2. /usr/share/doc/python3-uno/demo/makefile.mk
  3. /usr/share/emacs/23.4/lisp/cedet/ede/makefile-edit.elc
  4. /usr/share/gtksourceview-3.0/language-specs/makefile.lang
  5. /usr/share/icons/Humanity/mimes/16/gnome-mime-text-x-makefile.svg
  6. /usr/share/icons/Humanity/mimes/22/gnome-mime-text-x-makefile.svg
  7.  
  8. .....

#查找时不区分大小写,使用 -i

  1. bixiaopeng@bixiaopeng-To-be-filled-by-O-E-M:~$ locate -i makefile
  2.  
  3. /usr/src/linux-headers-3.8.0-30/kernel/Makefile
  4. /usr/src/linux-headers-3.8.0-30/kernel/debug/Makefile
  5. /usr/src/linux-headers-3.8.0-30/kernel/debug/kdb/Makefile
  6. /usr/src/linux-headers-3.8.0-30/kernel/events/Makefile
  7.  
  8. ......

# ------------- 使用正规运算式 做查找的条件 locate -r

#查找以makefile结尾的文件

  1. bixiaopeng@bixiaopeng-To-be-filled-by-O-E-M:~$ locate -r makefile$
  2. /usr/src/linux-headers-3.8.0-19/scripts/mkmakefile
  3. /usr/src/linux-headers-3.8.0-19-generic/scripts/mkmakefile
  4. /usr/src/linux-headers-3.8.0-27/scripts/mkmakefile
  5. /usr/src/linux-headers-3.8.0-27-generic/scripts/mkmakefile
  6. /usr/src/linux-headers-3.8.0-29/scripts/mkmakefile
  7. /usr/src/linux-headers-3.8.0-29-generic/scripts/mkmakefile
  8. /usr/src/linux-headers-3.8.0-30/scripts/mkmakefile
  9. /usr/src/linux-headers-3.8.0-30-generic/scripts/mkmakefile

#查找以/var/lib/dpkg/info/开头的文件

  1. bixiaopeng@bixiaopeng-To-be-filled-by-O-E-M:~$ locate -r ^/var/lib/dpkg/info/
  2.  
  3. /var/lib/dpkg/info/zlib1g:amd64.postinst
  4. /var/lib/dpkg/info/zlib1g:amd64.postrm
  5. /var/lib/dpkg/info/zlib1g:amd64.shlibs
  6. /var/lib/dpkg/info/zlib1g:amd64.symbols
  7. /var/lib/dpkg/info/zlib1g:i386.list
  8. /var/lib/dpkg/info/zlib1g:i386.md5sums
  9. /var/lib/dpkg/info/zlib1g:i386.postinst
  10. /var/lib/dpkg/info/zlib1g:i386.postrm
  11. /var/lib/dpkg/info/zlib1g:i386.shlibs
  12. /var/lib/dpkg/info/zlib1g:i386.symbols

【每天一个Linux命令】14. Linux中locate命令的用法的更多相关文章

  1. [转帖]Linux教程(14)- Linux中的查找和替换

    Linux教程(14)- Linux中的查找和替换 2018-08-22 07:03:58 钱婷婷 阅读数 46更多 分类专栏: Linux教程与操作 Linux教程与使用   版权声明:本文为博主原 ...

  2. windows下命令行模式中cd命令无效的原因

    当我们执行cmd 想切换当前工作目录时,会发现windows下命令行模式中cd命令没有生效,到底是什么原因呢? 例如: 当我们想切换到 D:\MySql\mysql-5.7.19-winx64\bin ...

  3. Linux中locate命令的实践总结

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

  4. 每天一个Linux命令(18)--locate命令

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

  5. Linux whereis、find和locate命令区别以及应用场景

    查找某个文件是我们在使用使用linux中非常常用的一个命令. linux中有多个查找文件的指令:whereis.find.locate都有类似查找的功能,下面将讲解这些指令之间的区别. whereis ...

  6. linux下shell脚本中sed命令的用法

    先来给一个案例: #将old.sql文件中的符号“|”替换为“,”,并保存到test.sql文件中 sed "s/|/,/g" "old.sql"> te ...

  7. linux命令在文件中根据命令查找

    find . -type f -name "*.tmp" | xargs grep -ri "2016-08-30 04:00:00|2016-08-30 05:00:0 ...

  8. 【Linux】在centos中使用命令安装redis

    1.前提centos能够上网 测试方式输入命令,有数据返回即可.如果则先配置centos网络连接. ping www.baidu.com 2.安装gcc 输入命令进行安装 yum install gc ...

  9. linux学习14 Linux运维高级系统应用-glob通配及IO重定向

    一.回顾 1.bash基础特性:命令补全,路径补全,命令引用 2.文件或目录的复制,移动及删除操作 3.变量:变量类型 存储格式,数据表示范围,参与运算 二.bash的基础特性 1.globbing: ...

随机推荐

  1. USB interrupt传输和isochronous传输的区别

    一直没理解USB的iso传输和interrupt传输的区别. 后来仔细看了下USB2.0 SPEC后才明白. interrupt传输和iso传输,都是等时的传输,也就是某个时间间隔发送一次. 区别在于 ...

  2. ZigBee 技术简介

       Zigbee是IEEE 802.15.4协议的代名词.根据这个协议规定的技术是一种短距离.低功耗的无线通信技术.这一名称来源于蜜蜂的八字舞,由于蜜蜂(bee)是靠飞翔和“嗡嗡”(zig)地抖动翅 ...

  3. Delphi通过GetFileVersionInfo和VerQueryValue等API函数取得详细EXE信息

    This has been described at About: http://delphi.about.com/cs/adptips2001/a/bltip0701_4.htmBasically, ...

  4. OpenSuSE查看指定软件包是否安装(OpenSuSE使用RPM作为默认的软件包维护管理工具)

    suse 是 zypper se xxxxx 是搜索软件包 (查看已经安装的 软件包是否已经安装)

  5. get方式中文乱码问题

    <a target="_blank" href="ftpFileAction!downloadFile.action?filename=测试.xml"&g ...

  6. Python学习入门基础教程(learning Python)--5 Python文件处理

    本节主要讨论Python下的文件操作技术. 首先,要明白为何要学习或者说关系文件操作这件事?其实道理很简单,Python程序运行时,数据是存放在RAM里的,当Python程序运行结束后数据从RAM被清 ...

  7. C#中HashTable的用法 【转】

    一,哈希表(Hashtable)简述 在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似keyvalue的键值对,其中 ...

  8. Android单元測试之JUnit

    随着近期几年測试方面的工作慢慢火热起来.常常看见有招聘測试project师的招聘信息.在Java中有单元測试这么一个JUnit 方式,Android眼下主要编写的语言是Java,所以在Android开 ...

  9. 呵呵!手把手带你在 IIS 上执行 Python

    公司的站点让我头痛死了.在众多前辈高手的带领下.一大堆的 CMD 在站点里执行得好好地,黑客攻击也好好地.仅仅有站点和我不好好地,我快累死了,站点快挂了.. . 为了解决问题.我想到了 Python ...

  10. ExtJs3学习资料分享

    最近在学习EXTJS3,在网上找了一些pdf的书.不过网上分享的有些书都是Ext2.0的.Ext3的比较少.有些书也不全.很多是样章.最近找到一本分享的书<ExtJS源码分析与开发实例宝典> ...