Linux之文本搜索工具grep
grep功能:根据模式搜索文本,并将符合模式的文本行显示出来
PATTERN:模式,即文本字符和正则表达式的元字符组合而成的匹配条件
1 通配符:
*:任意长度的任意字符
?:任意单个字符
[]:匹配指定范围内的任意单个字符
[^]:与[]相反
2 正则表达式:
元字符:
.:匹配任意单个字符
*:匹配次数(工作在贪婪模式下,尽可能长的匹配),
匹配其前面的字符任意个
.*:任意长度的任意字符
\?:匹配其前面的字符1次或0次
\{m,n\}:匹配其前面的字符至少m次,至多n次
\{1,\}:匹配其前面的字符至少1次
位置锚定:
^:锚定行首,此字符后面的任意内容必须出现在行首
$:锚定行尾,此字符前面的任意内容必须出现在行尾
^$:空白行
\<或\b:其后面的任意字符必须作为单词的首部出现
\>或\b:其前面的任意字符必须作为单词的尾部出现
分组
\(string\):string当做一组字符,一个整体,用于后向引用
后向引用
\1:引用第一个左括号以及与之对应的右括号所包括的所有内容
\2
\3
grep基本用法:
grep [OPTIONS] PATTERN [FILE...]
OPTIONS
-i:忽略大小写
--color:将搜索到的字符标色显示出来
-v:显示没有被模式匹配到的行
-o:只显示被匹配到的字符串
-A #:表示grep匹配到的行及之后的#行
-B #:表示grep匹配到的行及之前的#行
-C #:表示grep匹配到的行及前后的#行
-E:匹配扩展正则表达式
扩展正则表达式 egrep
次数匹配
+:匹配其前面的字符至少1次
分组
():括号内的为一个整体
本文出自 “术业有专攻” 博客,请务必保留此出处http://fuvip.blog.51cto.com/9276123/1981118
原文地址:http://fuvip.blog.51cto.com/9276123/1981118