开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第5天,点击查看活动详情
搜索查找类指令
find指令
find指令将从指定目录向下递归遍历各个子目录,将满足条件的文件或目录显示在终端
基本语法:find [搜索范围] [选项]
选项说明:
| 选项 | 功能 |
|---|---|
| -name<查询方式> | 按照指定的文件名查找模式查找文件 |
| -user<用户名> | 查找属于指定用户名所有文件 |
| -size<文件大小> | 按照指定的文件大小查找文件。 |
案例1:按文件名:根据名称查找/home 目录下的hello.txt文件
案例2:按拥有者:查找/opt目录下,用户名称为nobody的文件
、
案例3:查找整个linux系统下大于20m的文件(+n 大于-n小于 n等于)
**案例4:查找 / 目录下所有 .xml文件 **
find / -name *.xml
locate指令
locaate指令可以快速定位文件路径。locate指令利用事先建立的系统中所有文件名称及路径 的locate数据库实现快速定位给定的文件。Locate指令 无需遍历整个文件系统,查询速度较快。 为了保证查询结果的准确度,管理员必须定期更新locate时刻。
基本语法:locate 搜索文件
特别说明: 由于locate指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指令创建locate。
案例1:请使用locate指令快速定位 test.txt文件所在目录
grep指令和管道符号 |
grep过滤查找,管道符"|",表示将前一个命令的处理结果输出传递给后面的命令处理。
基本语法:grep [选项] 查找内容 源文件
常用选项:
| 选项 | 功能 |
|---|---|
| -n | 显示匹配行以及行号 |
| -i | 忽略字母大小写 |
案例1:请在hello.txt文件中,查找"yes" 所在行,并且显示行号
cat hello.txt | grep -n yes
上面的意思就是,把cat hello.txt这个命令交给了grep去处理,由grep去过滤yes这个单词