手机
当前位置:查字典教程网 >脚本专栏 >linuxshell >Shell脚本中通过正则表达式匹配IP地址
Shell脚本中通过正则表达式匹配IP地址
摘要:在运维场景下,我们经常需要在服务器上用正则表达式来匹配IP地址。shell和其它编程语言一样,也可以使用正则分组捕获,不过不能使用$1或1这...

在运维场景下,我们经常需要在服务器上用正则表达式来匹配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脚本中通过正则表达式匹配IP地址】相关文章:

Shell脚本实现递归删除空文件夹

shell脚本命令行参数简介

Shell脚本中执行sql语句操作mysql的5种方法

MAC中用Shell脚本批量裁剪各种尺寸的App图标

shell脚本学习与总结

Shell脚本定义变量和重新赋值

Shell正则表达式之grep、sed、awk实操笔记

Shell脚本判断IP地址是否合法的方法

Shell脚本实现自动修改IP、主机名等功能分享

Shell脚本解压rpm软件包

精品推荐
分类导航