shell脚本学习笔记之grep&正则表达式

grep命令是Linux中一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。

grep的主要参数:

-c:只输出匹配行的计数。 

-I:不区分大小写(只适用于单字符)。 

-h:查询多文件时不显示文件名。 

-l:查询多文件时只输出包含匹配字符的文件名。 

-n:显示匹配行及行号。 

-s:不显示不存在或无匹配文本的错误信息。 

-v:显示不包含匹配文本的所有行。

pattern正则表达式主要参数: 

字符类:

1). 匹配任意一个字符的一次出现(字符必须要存在)

2)[ ]:匹配括号中的任意一个字符

3)-:在[ ]内,表示字符的范围

数量限定符:

1)?: 紧跟在它前面的单元匹配零次或一次

2)*:紧跟在它前面的单元匹配零次或多次

3)+:紧跟在它前面的单元匹配一次或多次

4){N}:紧跟在它前面的单元匹配N次

5){N,}:紧跟在它前面的单元至少匹配N次

6){N,M}:紧跟在它前面的单元最少匹配N次,最多匹配M次

位置限定符:

1)^:匹配行首的位置 

2)$: 匹配行尾的位置 

3)\<:匹配单词开头的位置

4)\>:匹配单词结尾的位置

5)\b:匹配单词开头或者结尾的位置

6)\B:匹配非单词开头或者结尾的位置

其它特殊字符:

1)\:转义字符,普通字符转为特殊字符,特殊字符转为普通字符

2)():将正则表达式的一部分括起来组成一个单元,可以对整个单元使用数量限定符

3)|:连接两个子表达式,表示或的关系

练习:

1.匹配到正确的手机号码

shell脚本学习笔记之grep&正则表达式_第1张图片

2.匹配到正确的邮箱

shell脚本学习笔记之grep&正则表达式_第2张图片

3.匹配到正确的IP地址

shell脚本学习笔记之grep&正则表达式_第3张图片

你可能感兴趣的:(Linux)