Linux之shell脚本正则

正则表达式

用于搭配脚本或者命令使用极大的丰富了脚本的功能,所以在这里我们把它也归·为shell脚本的一部分(作者个人为了方便大家看才这么分类的)。正则表达式就是通过特殊的符号或者命令来对需要处理数据进行筛选或者加工。

类型含义示例说明
^匹配行首^abc以abc开头的行
$匹配行为$abc以abc结尾的行^$空行
.单个字符.除了换行(\n)外的任意字符5
+最少匹配一次a+一个或多个a
最多匹配一次a?0个或1个a
*匹配任意次*任意的东西
[]集合grep [a]搜索a
[^]集合取反grep[^a]搜索没有a的
{}数字查询ro\{2,3\}搜索以r开头o匹配2到3次
\b单词边界the\bthe后面不许有别的东西
\w匹配的内容+数字字母下划线roo\w匹配roo加字母数字下划线的组合
\s匹配空白\s匹配含有空格tab的行
\d匹配数字\d兼容性较差不管

通配符 “.*”匹配任意字符

egrep  25[0-9]  user   #匹配user内的250-259
egrep  1?[0-9]?[0-9]   user   #匹配0-199

扩展正则

grep "ro\{1,2\}t" user        #找rt,中间的o可以有1~2个
grep "ro\{2,6\}t" user        #找rt,中间的o可以有2~6个
grep "ro\{1,\}t" user            #找rt,中间的o可以有1个以及1个以上
grep "ro\{3\}t" user             #找rt,中间的o必须只有有3个
grep "\(0:\)\{2\}" user        #找连续的2个0:  小括号的作用是将字符组合为一个整体

//扩展后


扩展后要给开头加e或者给grep后面加 -E
egrep "ro{1,2}t" user        #找rt,中间的o可以有1~2个
egrep "ro{2,6}t" user        #找rt,中间的o可以有2~6个
egrep "ro{1,}t" user            #找rt,中间的o可以有1个以及1个以上
egrep "ro{3}t" user             #找rt,中间的o必须只有有3个
egrep "(0:){2}" user        #找连续的2个0:  小括号的作用是将字符组合为一个整体

egrep "root|bin"  user     #查找root或bin
egrep "the\b" user         #查找the并且后面没有任何符号
egrep "\bthe\b" user       #前后都没的
egrep "\<the\>" user       #同上
  • 9
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值