一.grep用法
grep:文本过滤工具 正则表达式引擎
基于用户指定的“模式”,对目标文件逐行进行匹配检查,打印匹配到的行,默认打印到终端窗口
模式:正则表达式元字符编写出来的过滤条件
正则表达式:由一类特殊的字符以及文本字符所编写的模式,并不代表字面含义,表达控制或者通配的功能
元字符: [[:space:]]
选项 | 作用 |
---|
-i | 忽略字符大小写 |
- -color=auto | 高亮显示匹配到的文本 |
-n | 显示行号 |
-E | 支持使用扩展正则表达式 |
-o | 打印匹配到的行 |
-v | 显示不能被匹配到的行 |
-A # | 后几行 |
-B # | 前几行 |
-C # | 前后各几行 |
二.元字符
字符 | 作用 |
---|
. | 匹配任意单个字符 |
[ ] | 匹配指定范围内的任意字符 |
[ ^ ] | 匹配指定范围外的任意字符 |
[ [:lower:] ] | 小写字母 |
三.匹配次数
用在要指定出现的次数的字符的后面,用来限制其前面字符出现的次数
字符 | 作用 |
---|
* | 匹配其前面的字符任意次。0次,1次或者多次 |
.* | 匹配任意长度的任意字符 |
\ ? | 匹配其前面的字符0次或者1次,最多一次 |
\ + | 匹配其前面的字符1次或者多次,至少一次 |
{m} | 匹配其前面的字符m次 |
{m,n} | 匹配其前面的字符至少m次,至多n次 |
{0,n} | 至多n次 |
{m,} | 至少m次 |
四.位置锚定
字符 | 作用 |
---|
^ | 行首锚定,用于模式的最左侧 |
$ | 行尾锚定,用于模式的最右侧 |
^
或
[
[
:
s
p
a
c
e
:
]
]
∗
或^[[:space:]]*
或[[:space:]]∗ | 空白行 |
^pattern$ | 用pattern来匹配整行 |
\ <或者\b | 词首锚定,用于单词的左侧 |
\ >或者\b | 词尾锚定,用于单词的右侧 |
| |