grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)
是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。
egrep、fgrep是grep的别名
pgrep与grep有区别
使用方法
1 |
grep[ |
-E 支持正则 使用egrep命令
-F 使用fgrep命令
正则
-
利用中括号[]来查找集合字符
1
m[ae]n // a 或者 e
-
反向选择^的使用
1
[^/]man
-
字符
1
2
3
4
5
6
7
8
9
10[:alnum:] - 字母数字字符
[:alpha:] - 字母字符
[:blank:] - 空字符: 空格键符 和 制表符
[:digit:] - 数字: '0 1 2 3 4 5 6 7 8 9'
[0-9] - 数字: '0 1 2 3 4 5 6 7 8 9'
[:lower:] - 小写字母: 'a b c d e f g h i j k l m n o p q r s t u v w x y z'
[a-z] - 小写字母: 'a b c d e f g h i j k l m n o p q r s t u v w x y z'
[:space:] - 空格字符: 制表符、换行符、垂直制表符、换页符、回车符和空格键符
[:upper:] - 大写字母: 'A B C D E F G H I J K L M N O P Q R S T U V W X Y Z'
[A-Z] - 大写字母: 'A B C D E F G H I J K L M N O P Q R S T U V W X Y Z' -
通配符
1
2"." 来匹配单个字符
\. 转译 -
次数
1
2
3{N}
{N,}
{min,max}
限定符 | 描述 |
---|---|
. |
匹配任意的一个字符。 |
? |
匹配前面的子表达式,最多一次。 |
* |
匹配前面的子表达式零次或多次。 |
+ |
匹配前面的子表达式一次或多次。 |
{N} |
匹配前面的子表达式 N 次。 |
{N,} |
匹配前面的子表达式 N 次到多次。 |
{N,M} |
匹配前面的子表达式 N 到 M 次,至少 N 次至多 M 次。 |
- |
只要不是在序列开始、结尾或者序列的结束点上,表示序列范围。 |
^ |
匹配一行开始的空字符串;也表示字符不在要匹配的列表中。 |
$ |
匹配一行末尾的空字符串。 |
\b |
匹配一个单词前后的空字符串。 |
\B |
匹配一个单词中间的空字符串。 |
\< |
匹配单词前面的空字符串。 |
\> |
匹配单词后面的空字符串。 |