加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

grep和egrep的基础知识

发布时间:2020-12-14 01:55:28 所属栏目:百科 来源:网络整理
导读:grep: ( global search regular expression(RE) and print out the line ) 是一种文本搜索工具,可根据用户指定的文本模式对目标文件进行逐行搜索,显示能够被模式所匹配 到的行。 有则显示, 无则不显示 。 1 格 式 : grep [options] “pattern” file..

grep: global search regular expression(RE) and print out the line

是一种文本搜索工具,可根据用户指定的文本模式对目标文件进行逐行搜索,显示能够被模式所匹配到的行。 有则显示, 无则不显示

1 grep [options] “pattern” file...

1)pattern为字符串参数或调用变量时最好将其用双引号括起来;

2) pattern为模式匹配时应用单引号括起来。

2 常用参数

-v: 取反,显示不能被模式所匹配到的行;

-o: 只显示被模式匹配到的字串,而不显示整行;

-i: 不区分大小写;

-E: 支持扩展正则表达式,相当于egrep;

-A:参数后跟数字#,显示被匹配到的行和后面#行;

-B: 参数后跟数字#,显示被匹配到的行和前面#行;

-C: 参数后面跟数字#,显示被匹配到的行和前后各#行。


-v 找出默认shell为非bash的用户信息。

wKiom1MIbm_haHYmAAFLBqzO2JQ457.bmp

-i 找出用户名为“myqq”的用户信息 用户名不区分大小写。

wKiom1MIczDCX2xdAAGt1g32BY8741.bmp

-E 显示ifconfig命令结果的1-255间的整数。

wKioL1MIb_ThJsGFAASJ1q373sU745.bmp

-A 找出用户user49后面三个用户的信息。

wKiom1MHV6byoVV0AAP-7igcKZQ702.bmp



egrep也是文本一种文本搜索工具, 相当与 grep -E。


grep和egrep命令参数不多,复杂在正则表达式。


基本正则表达式 grep

字符匹配

.:匹配单个字符;

[]: 匹配指定范围内任意单个字符;

[0-9],[[:digit:]] 匹配一个数字;

[a-z],[[:lower:]]匹配一个小写字母;

[A-Z].[[:upper:]]匹配一个大写字母;

[[:alpha:]]匹配一个字母(大小写);

[[:alnum:]]匹配一个数字或一个字母;

[[:space:]]匹配空白字符;

[[:punct:]]匹配标点符号;

[^]:指定范围外的任意当字符。

次数匹配 匹配对象为前面的字符;

* : 匹配前面字符任意次;

? : 0次或一次;

{0,n}:至多n次 ;

{n} : n次;

{m,n} :m到n次;

{n,}: 至少n次。

位置锚定

^:锚定行首;

$:锚定行尾;

&;或b:锚定词首;

&;或b锚定词尾;

分组 ()

如 :(ab)*x 匹配x前面任意个ab组合 :x、abx、ababx……;

引用 1 引用前面第一个左括号到与之对应的右括号中所匹配到的内容;

如: (a.b)x1 :aabxaab、a1bxa1b。


扩展正则表达式 egrep grep -E

字符匹配和位置锚定与基本正则表达式相同;

次数匹配

*:匹配其前面的字符任意次;

? : 匹配其前面的字符01次;

+: 匹配其前面的字符至少1

{m}: 匹配其前面的字符m次;

{m,n}: 至少m次,至多n次 作用与基本表达式中{m,n}相同;

{m,}: 至少m次;

{0,n}:至多n次。

分组()和|

如 l(ik|ov)er 匹配liker或lover。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读