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 | 显示不能够被模式匹配到的行 |
-H | 匹配到的文本前加入文件名称,在搜索多个文件时可用 |
-A# | 显示被模式匹配到的行及后#行,就是查找上下文信息,可用于追踪分析 |
-B# | 显示被模式匹配到的行及前#行 |
-C# | 显示被模式匹配到的行及后#行 |
使用多个参数时可-xx,也可-x -x,为了阅读方便还是建议使用后者
2.3元字符
在匹配模式中可以使用元字符,常用的元字符如下所示
元字符 | 解释 |
---|---|
. | 任意一个非空格字符 |
* | 匹配前面包含零个或多个字符 |
[] | 匹配方括号中的字符类中的任意一个 |
^ | 匹配开头 |
$ | 匹配结尾 |
\ | 匹配转义 |
3.注意点
- .*可以匹配任意个字符
- h*l可以匹配到 任意个h或没有h,紧跟着l, *x *在前面是匹配不到任何数据的