Linux自学笔记 | 09 常用命令 - 搜索查找类
- Linux自学笔记 | 01 文件系统和目录结构
- Linux自学笔记 | 02 VIM编辑器的安装与使用
- Linux自学笔记 | 03 Linux网络配置
- Linux自学笔记 | 04 远程登录
- Linux自学笔记 | 05 系统管理
- Linux自学笔记 | 06 常用命令 - 文件目录类
- Linux自学笔记 | 07 常用命令 - 时间日期类
- Linux自学笔记 | 08 常用命令 - 用户权限类
- Linux自学笔记 | 09 常用命令 - 搜索查找类
一、find 查找文件或目录
- 释义:在指定目录内(递归遍历)查找满足条件的文件或文件夹
- 命令:
find [搜索范围] [参数]
-name<查询方式>
按指定的查询方式查找文件-user<用户名>
查找属于指定用户的所有文件-size<文件大小>
按指定的文件大小查找文件b
块(512字节)c
字节w
字(2字节)k
千字节M
兆字节G
吉字节
- 示例
# 查找当前目录下名字为info的文件或目录
find -name info
# 查找root目录下cfg后缀的文件
find /root -name "*.cfg"
# 查找属于Jam的以.txt结尾文件
find /home -user tony -name "*.txt"
# 查找root目录下大于2M的文件(小于用减号-)
find /root -size +2M
二、locate 快速定位文件路径
- 释义:在数据库中查询文件(全局查找),速度快但非实时更新
- 命令:
locate [要搜索的文件]
- 示例
# 第一次运行前需使用updatedb命令创建locate数据库
yum -y install mlocate # 若提示“未找到命令” 则执行此命令安装插件
updatedb
# 查找名称或路径包含tmp的文件或目录
locate tmp
三、grep 过滤查找
- 释义:过滤查找或在文件中查找,常与管道符
|
搭配使用。管道符:将前一个命令的结果输出传递给后面的命令处理。 - 命令:
grep [-n] [查找内容] [源文件]
-n
显示匹配行及行号
- 示例
# 查找/root目录下anaconda-ks.cfg文件中包含boot的行
grep -n boot /root/anaconda-ks.cfg # 在文件的内容中查找
# 查找显示/etc目录下包含.conf的文件
ls /etc | grep .conf # 在 "ls /etc" 命令的结果中查找
# 对上一步的结果进行统计,wc命令是word count的缩写,基本用法为:wc [文件名]
ls /etc | grep .conf | wc # 输出结果:33 33 433 表示有33行,33个词,433字节