linux三剑客之grep详解
1.什么是Grep
grep(Golobal Regular Expression print)是Linux系统中一个强大的文本搜索工具,也是俗称的搜索三兄弟之一,其他两个是awk和sed,grep可以把搜索到的内容打印到屏幕上,并且不影响搜索目标文件,同时可以使用正则表达式进行搜索。
2.用法
2.1基本语法
grep [OPTION]... PATTERN [FILE]...
OPTION:参数
PATTERN:匹配表达式
FILE:要搜索的文件
通过语法可以看出,OPTION和FILE均可是多个,可以在命令行中输入 grep --help 来获取命令帮助
2.2 OPTION参数
参数 | 解释 |
---|---|
-c | 只显示匹配的行数,做统计使用 |
-n | 匹配到的文本前加入行号 |
-o | 只显示被模式匹配到的内容, 没有该参数会显示整行文本数据,并且匹配到的文本标红 |
-i | 搜索时不区分大小写 |
-v | 显示不能够被模式匹配到的行 |
-r | 递归查询 后面要跟目录而非文件名称 |
-H | 匹配到的文本前加入文件名称,在搜索多个文件时可用 |
-A# | 显示被模式匹配到的行及后#行,就是查找上下文信息,可用于追踪分析 |
-B# | 显示被模式匹配到的行及前#行 |
-C# | 显示被模式匹配到的行及后#行 |
使用多个参数时可-xx,也可-x -x,为了阅读方便还是建议使用后者
2.3元字符
在匹配模式中可以使用元字符,常用的元字符如下所示
元字符 | 解释 |
---|---|
. | 任意一个非空格字符 |
* | 匹配前面包含零个或多个字符 |
[] | 匹配方括号中的字符类中的任意一个 |
^ | 匹配开头 |
$ | 匹配结尾 |
\ | 匹配转义 |
3.注意点
- .*可以匹配任意个字符
- h*l可以匹配到 任意个h或没有h,紧跟着l, *x *在前面是匹配不到任何数据的
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
2021-03-25 git常用命令