Linux之搜索查找类指令

1. 搜索查找类

1.1 find 指令

  • find指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端。
  • 基本语法:find [搜索范围] [选项]
  • 选项说明
    在这里插入图片描述
  • 应用实例
  1. 案例1:按文件名:根据名称查找/home目录下的 hello.txt 文件
find /home -name hello.txt
  1. 案例2:按拥有者:查找/opt目录下,用户名称为nobody的文件
find /opt -user nobody
  1. 案例3:查找整个linux系统下大于200M的文件(+n大于,-n小于,n等于,单位有k,M,G)
find / -size +200M

1.2 locate 指令

  • locate 指令可以快速定位文件路径。locate 指令利用事先建立的系统中所有文件名称及路径的 locate数据库实现快速定位给定的文件。Locate 指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新locate时刻
  • 基本语法:locate 搜索文件
  • 特别说明
    由于locate 指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指令创建locate数据库。
  • 应用实例
    案例1:请使用locate指令快速定位hello.txt文件所在目录,找不到就不返回数据
locate hell.txt
  • 补充:which指令,可以查看某个指令在哪个目录下,比如ls指令在哪个目录 which Is
    在这里插入图片描述

1.3 grep 指令和管道符号 │

  • grep过滤查找,管道符,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理。
  • 基本语法
grep [选项] 查找内容 源文件
  • 常用选项
    在这里插入图片描述
  • 应用实例
  1. 案例1:请在hello.txt文件中,查找"yes"所在行,并且显示行

写法1:

cat /home/hello.txt | grep -n "yes"

写法2:

grep -n "yes" /home/hello.txt

在这里插入图片描述

posted @ 2021-04-11 23:27  兮动人  阅读(43)  评论(0编辑  收藏  举报