源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

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

  • 时间:2020-05-05 21:52 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Shell脚本中通过正则表达式匹配IP地址
在运维场景下,我们经常需要在服务器上用正则表达式来匹配IP地址。 shell和其它编程语言一样,也可以使用正则分组捕获,不过不能使用 $1或\1这样的形式来捕获分组,可以通过数组${BASH_REMATCH}来获得,如${BASH_REMATCH[1]},${BASH_REMATCH[N]} 下面以ip="121.0.2.2"为例,shell脚本代码如下(当然,你要做成更通用交互式的脚本,可以通过expect来实现):
[u]复制代码[/u] 代码如下:
#!/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
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部