sh 找不到非正则检测是否存在子字符串的方法的变通非正则检测方式

正则的形式如下

`expr "$str" : '.*\(substr\)'`

因为如果substr中包含有特殊字符时就比较麻烦.暂时想到有什么能一句就写完的不用正则的方式,利用替换后字符长度变化来确认是否包含有子串的变通方式:且支持多行

 

 queue=`sudo -u root  postqueue -p` # must runt postqueue by root
                echo "queue list under
                $queue"
                len=${#queue}
                mail='_'
                mail+=$bName
                mail+='@'
                mail+=$myDomain
                queue=${queue//$mail/'*'}
                nLen=${#queue}
                echo "$len $nLen
                $queue"

------------测试输出,子串都被替换成*号-------------

queue list under
                -Queue ID- --Size-- ----Arrival Time---- -Sender/Recipient-------
BDF9C100576*    3177 Mon Dec 26 15:27:38  MAILER-DAEMON
                                         service_23@myhrd.cn

2202F10057A*    1208 Mon Dec 26 15:27:43  service_23@myhrd.cn
                                         1015488527@qq.com

B8348100475*    1208 Mon Dec 26 15:27:42  service_23@myhrd.cn
                                         1016255977@qq.com

C9D6910048D*    1208 Mon Dec 26 15:27:42  service_23@myhrd.cn
                                         1016261569@qq.com

105A0100531*    1208 Mon Dec 26 15:27:43  service_23@myhrd.cn
                                         1015483425@qq.com

-- 10 Kbytes in 5 Requests.
699 644
                -Queue ID- --Size-- ----Arrival Time---- -Sender/Recipient-------
BDF9C100576*    3177 Mon Dec 26 15:27:38  MAILER-DAEMON
                                         service*

2202F10057A*    1208 Mon Dec 26 15:27:43  service*
                                         1015488527@qq.com

B8348100475*    1208 Mon Dec 26 15:27:42  service*
                                         1016255977@qq.com

C9D6910048D*    1208 Mon Dec 26 15:27:42  service*
                                         1016261569@qq.com

105A0100531*    1208 Mon Dec 26 15:27:43  service*
                                         1015483425@qq.com

-- 10 Kbytes in 5 Requests.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值