• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Shell脚本中通过正则表达式匹配IP地址

    在运维场景下,我们经常需要在服务器上用正则表达式来匹配IP地址。

    shell和其它编程语言一样,也可以使用正则分组捕获,不过不能使用 $1或\1这样的形式来捕获分组,可以通过数组${BASH_REMATCH}来获得,如${BASH_REMATCH[1]},${BASH_REMATCH[N]}

    下面以ip="121.0.2.2"为例,shell脚本代码如下(当然,你要做成更通用交互式的脚本,可以通过expect来实现):

    复制代码 代码如下:

    #!/bin/bash
    ip="121.0.2.2"
    if [[ $ip =~ ^([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$ ]]
    then
        echo "Match"
        echo ${BASH_REMATCH[1]}
        echo ${BASH_REMATCH[2]}
        echo ${BASH_REMATCH[3]}
        echo ${BASH_REMATCH[4]}
    else
        echo "Not match"
    fi

    您可能感兴趣的文章:
    • shell 正则表达式详细整理
    • Shell正则表达式之grep、sed、awk实操笔记
    • Shell if中的正则表达式使用详解
    • Shell正则表达式验证IP地址
    • PowerShell中正则表达式使用例子
    • linux shell 路径截取正则表达式
    • Shell正则表达式学习笔记
    • PowerShell中使用正则表达式匹配字符串实例
    • 详解Linux--shell脚本之正则表达式
    • shell高级学习之正则表达式
    上一篇:Shell正则表达式验证IP地址
    下一篇:执行Shell脚本的4种方法及区别介绍
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Shell脚本中通过正则表达式匹配IP地址 Shell,脚本,中,通过,正则,