locate - 文件名搜索命令

用于查找文件

格式为:locate 文件名

该命令用于查找符合条件的文件,它会去保存文件与目录名称的数据库内,查找合乎范本样式条件的文件或目录。

因为该命令是直接在数据库内搜索(/var/lib/mlocate为locate所搜索的数据库,发型版本不同,文件名可能有所不同),而不是遍历整个硬盘,所以搜索速度较快。

但由于数据库不是实时更新的,所以缺点是新建的文件会搜索不到,可使用updatedb命令来更新数据库。

需要注意locate的配置文件/etc/updatedb.conf:

  

PRUNE_BIND_MOUNTS 等于yes时候,下面三个规则全部生效,等于no时候,下面三个规则全不生效。

PRUNEFS 不搜索的文件系统

PRUNENAMES 不搜索的文件后缀

PRUNEPATHS 不搜索的路径

whereis、which - 命令搜索命令

whereis

格式为:whereis,命令名

用于查找命令所在的路径和其帮助文档所在路径,其只能搜索系统命令,而不能用户自己创建的文件。

which

格式为:which 文件名

which指令会在环境变量$PATH设置的目录里查找符合条件的文件。

find - 文件搜索命令

格式为:find [搜索范围] [搜索条件]

find命令支持使用通配符

*       匹配任意内容

?     匹配任意一个字符

[]       匹配任意一个中括号内的字符

搜索条件:

-name name    查找名称为name的文件

-iname name   查找名称为name的文件,不区分大小写

-user root         查找所有者为root的文件

-nouser    搜索没有所有者的文件

-mtime     修改文件内容时间

-ctime       修改文件属性时间

-atime      文件访问时间

-[x]time -10      十天内

-[x]time 10        十天当天

-[x]time +10     十天前

-size

-size -25k          小于25k的文件

-size 25k            等于25k的文件

-size +25k                   大于25k的文件

-inum 262242  查找i节点为262242的文件

-exec 命令2 {}\;      跟在命令1之后,命令1的执行结果交给命令2来执行

find命令的条件可以使用-a(and)和-o(or)来逻辑连接两个条件来搜索文件

grep - 字符串搜索命令

格式为:grep [选项] 字符串 文件名

在文件中匹配复合条件的字符串

选项:

-i       忽略大小写

-v      排除指定字符串

find和grep的区别

find命令:在系统当中搜索符合条件的文件,如果需要匹配,使用通配符匹配,通配符是完全匹配

grep命令:在文件当中搜索符合条件的字符串,如果需要匹配,使用正则表达式进行匹配,正则表达式是包含匹配

所以我们要搜索文件名时,使用find+通配符,但当我们搜索文件内容时,使用grep+正则表达式

整理自:慕课网(www.imooc.com)

Linux 之 搜索的更多相关文章

  1. linux常用搜索文件命令

    使用linux系统难免会忘记文件所在的位置,可以使用以下命令对系统中的文件进行搜索.搜索文件的命令为”find“:”locate“:”whereis“:”which“:”type“ 方法/步骤     ...

  2. Linux下搜索文件find、which、whereis、locate

    Linux下搜索文件find.which.whereis.locate: - which 寻找“执行文件” - -a 将所有可找到的命令均列出,而不仅仅列出第一个找到的命令名称 - whereis 寻 ...

  3. 在Linux下搜索文件

    在Linux下搜索文件============================= 1,which 查找可执行文件的绝对路径 [root@aminglinux ~]# which cat /bin/ca ...

  4. Linux文本搜索及截取操作

    Linux文本搜索及截取操作 cat 查看 grep 搜索 awk 截取 查看dna-server.xml 文件的内容 [root@localhost servers]# cat cwag9002/w ...

  5. Linux如何搜索查找文件里面内容

    在Linux系统当中,如何搜.索查找文件里面的内容呢? 这个应该是系统维护.管理当中遇到最常见的需求.那么下面介绍,总结一下如何搜索.查找文件当中的内容. 搜索.查找文件当中的内容,一般最常用的是gr ...

  6. Linux文件搜索命令

    文件搜索命令:locate locate 文件名 在后台数据库中按文件名搜索,搜索速度很快(比find命令要快得多) locate命令所搜索的后台数据库的位置:/var/bin/mlocate 支持模 ...

  7. Atitit.软件guibuttonand面板---os区-----linux windows搜索文件 目录

    Atitit.软件guibuttonand面板---os区-----搜索文件 1. Find 1 2. 寻找文件夹 1 3. 2. Locate// everything 1 4. 3. Wherei ...

  8. whereis linux文件搜索

    whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b).man说明文件(参数-m)和源代码文件(参数-s).如果省略参数,则返回所有信息. 和find相比,whereis查找的速度非 ...

  9. Linux系列教程(六)——Linux文件搜索命令

    前一篇博客我们讲解了Linux链接命令和权限管理命令, 通过 ln -s  链接名 表示创建软链接,不加-s表示创建硬链接:还有三个更改权限的命令,chmod命令可以更改文件或目录权限,chown命令 ...

  10. linux 中搜索命令的对比

    1.find find是最常用和最强大的查找命令.它能做到实时查找,精确查找,但速度慢. find的使用格式如下: #find [指定目录] [指定条件] [指定动作] 指定目录:是指所要搜索的目录和 ...

随机推荐

  1. Swift细节记录<一>

    1.全局变量记录: import UIKit class HHTSwitchGlobalData: NSObject { var isWaiterAutoPop: Bool = true privat ...

  2. Swift4.0复习错误处理

    1.Swift中错误的表示: “在Swift中如果我们要定义一个表示错误的类型非常简单,只需遵循 Error 协议即可.我们通常用枚举或结构体类型来表示错误类型,当然枚举可能用得更多些,因为它能更直观 ...

  3. 【JQuery Zepto插件】图片预加载

    屏幕滚动到图片当前位置加载图片,把图片的真实地址写到data-src属性里即可. <img src="占位图" data-src="img/foot.jpg&quo ...

  4. vue-cli3 按需加载loading,服务的方式调用

    安装 babel-plugin-component npm install babel-plugin-component -S 安装element-ui npm install element-ui ...

  5. git的使用学习(二)git的操作使用

    1.创建版本库 什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都 ...

  6. consui(二)集群配置

    consul集群搭建:一.软件安装Linux 环境下载zip包然后直接解压,然后把解压的文mv consul /bin检验安装是否成功,查看版本[root@node1 ~]consul -vConsu ...

  7. laravel 为Eloquent 模型添加replace 和insert ignore 查询功能

    安装:composer require jdavidbakr/replaceable-model 在模型里引入: class model extends Model { ... use \jdavid ...

  8. mysql order by rand() 优化方法

    mysql order by rand() 优化方法 适用于领取奖品等项目<pre>mysql> select * from user order by rand() limit 1 ...

  9. kill 掉 占据端口的进程

    netstat -anp | grep 80kill -9 进程号

  10. 从零开始学Flask框架-003

    index.py from flask import Flask,render_template from flask_bootstrap import Bootstrap #初始化 app = Fl ...