locate命令其实是find -name的另一咱写法,但是要比后者快的多,原因在于它不搜索具体目录,而是搜索/var/lib/locatedb或/var/lib/mlocate/mlocate.db,这个数据库中含有本地所有文件信息。linux系统自动创建这个数库,并且每天自动更新一次,所以使用locate命令 查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。

如下面的例子:

[root@NB test]# touch chehi123
[root@NB test]# pwd
/root/test
[root@NB test]# cd
[root@NB ~]# pwd
/root
[root@NB ~]# locate chehi
[root@NB ~]# updatedb
[root@NB ~]# locate chehi
/root/test/chehi123
#但在/tmp下的文件是不效的
[root@NB tmp]# touch tmp123
[root@NB tmp]# pwd
/tmp
[root@NB tmp]# locate tmp123
[root@NB tmp]# cd
[root@NB ~]# locate tmp123
[root@NB ~]# updatedb
[root@NB ~]# locate tmp123
[root@NB ~]#

 注意:在u盘里的文件也不会被存在/var/lib/mlocate/mlocate.db中,所以locate不能查到u盘内的文件!!!!!确切地说放在/media下的文件都不会被存在/var/lib/mlocate/mlocate.db中!!

我见过最NB的查找文件最快的命令

[root@NB data]# locate teamviewer.
/data/Software/teamviewer.i686.rpm
/home/ok/.local/share/teamviewer11/drive_c/teamviewer.html
/home/ok/Desktop/TMP/teamviewer.png
/home/ok/Downloads////////test/teamviewer.zip
/opt/teamviewer/tv_bin/desktop/teamviewer.png

locate -r :使用正规运算式做查找的条件以makefile结尾的

[root@NB data]# locate -r makefile$
/usr/local/src/rar/makefile

以/usr/local/src/test开头的

[root@NB dnsmasq]# locate -r  ^/usr/local/src/test
/usr/local/src/test
/usr/local/src/test/MySQL-5.6.-.rhel5.x86_64.rpm-bundle.tar
/usr/local/src/test/MySQL-client-5.6.-.rhel5.x86_64.rpm
/usr/local/src/test/MySQL-devel-5.6.-.rhel5.x86_64.rpm
/usr/local/src/test/MySQL-embedded-5.6.-.rhel5.x86_64.rpm
/usr/local/src/test/MySQL-server-5.6.-.rhel5.x86_64.rpm
/usr/local/src/test/MySQL-shared-5.6.-.rhel5.x86_64.rpm
/usr/local/src/test/MySQL-shared-compat-5.6.-.rhel5.x86_64.rpm
/usr/local/src/test/MySQL-test-5.6.-.rhel5.x86_64.rpm

-i是不分大小写

locate 最快的查找文件的命令 NB的更多相关文章

  1. Linux基本命令(9)定位、查找文件的命令

    定位.查找文件的命令 命令 功能 命令 功能 which 从path中找出文件的位置 find 找出所有符合要求的文件 whereis 找出特定程序的路径 locate 从索引中找出文件位置 9.1 ...

  2. CentOS定位、查找文件的命令

    定位.查找文件的命令 命令 功能 命令 功能 which 从path中找出文件的位置 find 找出所有符合要求的文件 whereis 找出特定程序的路径 locate 从索引中找出文件位置 9.1 ...

  3. Linux中常用的查找文件的命令

    我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索.这些是从网上找到的资料(参考资料1),因为有时很长时间不会用到,当要用的时候经常弄混了,所以放到这里方便使用. w ...

  4. linux查找文件夹命令

    查找命令: 查找根目录下查找文件夹名称叫www.91cnm.com的目录地址 find / -name www.91cnm.com -d 1 查找/var/www/目录下叫index.php的文件 f ...

  5. find 查找文件的命令

    find顾名思义就是查找,Linux下find命令提供相当多的查找条件,可以在众多文件或目录下查找你想要的任何文件或目录. 语法: find filename 我当前目录下有aaa.txt和bbb.t ...

  6. linux查找文件的命令【转】

    原文链接:http://www.ruanyifeng.com/blog/2009/10/5_ways_to_search_for_files_using_the_terminal.html 1. fi ...

  7. Linux系统查找文件find命令使用(不断更新)

    个人博客地址:http://www.cnblogs.com/wdfwolf3/. 使用格式:find  [查找目录]  [查找规则]  [查找完后执行的操作] [查找目录] 即要查找的路径,可以使用 ...

  8. linux 查找文件的命令

    http://www.ruanyifeng.com/blog/2009/10/5_ways_to_search_for_files_using_the_terminal.html

  9. Linux 查找文件命令 find whereis locate

    Linux 有三个查找文件的命令:find, whereis, locate 其中find 不常用,whereis与locate经常使用,因为find命令速度较慢,因为whereis与locate是利 ...

随机推荐

  1. Web jquery表格组件 JQGrid 的使用 - 从入门到精通 开篇及索引

    因为内容比较多,所以每篇讲解一些内容,最后会放出全部代码,可以参考.操作中总会遇到各式各样的问题,个人对部分问题的研究在最后一篇 问题研究 里.欢迎大家探讨学习. 代码都经过个人测试,但仍可能有各种未 ...

  2. centos 7.0 安装nginx 1.117

    php官方下载地址 http://cn2.php.net/downloads.php

  3. 常见ES5方法

    • ES5 JSON扩展JSON.parseJSON.stringify • ES5 Object扩展Object.createObject.keys • Date对象Date.now • ES5 F ...

  4. REDHAT一总复习1 NTP更改时区,并验证时区设置是否正确

    把计算机时区调整到巴哈马(这是个啥地方?听都没听过.) 使用 tzselect  进行确定时区,并进行可对话性的设置,按照对应的序号,射进去就行了. 使用:timedatectl set-timezo ...

  5. gvim 安装YCM

    gvim的插件安装笔记 1.安装vunble插件 该插件主要用于管理别的插件,借助与git,从github来下载插件,实现自动安装前提条件是git安装正确,可以听过cnd使用,并且可以正确访问gith ...

  6. JavaScript基础(一)之语法、变量、数据类型

    1.JavaScript语法 ①区分大小写 ②弱类型变量 ③每行结尾分号可有可无 ④括号用于代码块 ⑤注释有两种方式(单行和多行注释) 2.JavaScrip变量 ①用Var声明,不要初始化 ②可以在 ...

  7. php数组array_push()和array_pop()以及array_shift()函数

    <?php /** * array_push()将一个或多个单元压入数组的末尾(入栈) */ $stack = array("Java", "Php", ...

  8. User space 与 Kernel space

    学习 Linux 时,经常可以看到两个词:User space(用户空间)和 Kernel space(内核空间). 简单说,Kernel space 是 Linux 内核的运行空间,User spa ...

  9. python dict clear只能删除一层,不能够递归删除。

    void PyDict_Clear(PyObject *op) { dictobject *mp; dictentry *ep, *table; int table_is_malloced; Py_s ...

  10. PHP中被定义为false的

    if($res == false){ echo "未定义通过<br>"; } $res = 0; if($res == false){ echo "0数字通过 ...