您现在的位置是:网站首页> 编程资料编程资料
Shell脚本中通过正则表达式匹配IP地址_linux shell_
2023-05-26
474人已围观
简介 Shell脚本中通过正则表达式匹配IP地址_linux shell_
在运维场景下,我们经常需要在服务器上用正则表达式来匹配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地址_linux shell_
- Shell脚本检查IP格式及mysql操作实例_linux shell_
- Shell脚本定期清空大于1G的日志文件_linux shell_
- Shell中函数返回值超出问题_linux shell_
- linux下通过命令行获取gmail的新邮件_linux shell_
- linux下使用rinetd来实现端口转发_linux shell_
- Centos下查看网卡的实时流量命令_linux shell_
- Linux 中 CURL常用命令详解_linux shell_
- 零基础入门篇之Linux及Arm-Linux程序开发笔记_linux shell_
- Linux下使用tcpdump抓包的实现方法_linux shell_
