BASH 脚本匹配 IP 地址的 简单例子 (正则表达式)


LINUX 真是个非常 强大的操作系统 当然也非常的好玩. LINUX下的默认BASH SHELL本身就是个编程语言, 语言本身就支持正则表达式的匹配. 可以通过 =~ 来进行正则表达式的匹配. 匹配的结果存在了 数组 ${BASH_REMATCH[1]}, ${BASH_REMATCH[2]} 等等.

1
2
3
4
5
6
7
8
9
10
11
12
#!/bin/bash
ip="192.168.0.1"
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 "匹配IP成功"
    echo ${BASH_REMATCH[1]}
    echo ${BASH_REMATCH[2]}
    echo ${BASH_REMATCH[3]}
    echo ${BASH_REMATCH[4]}
else
    echo "匹配不成功"
fi
#!/bin/bash
ip="192.168.0.1"
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 "匹配IP成功"
    echo ${BASH_REMATCH[1]}
    echo ${BASH_REMATCH[2]}
    echo ${BASH_REMATCH[3]}
    echo ${BASH_REMATCH[4]}
else
    echo "匹配不成功"
fi

运行的结果是:

匹配IP成功
192
168
0
1

英文: https://helloacm.com/simple-example-use-bash-shell-to-match-ip-address/

GD Star Rating
loading...
本文一共 112 个汉字, 你数一下对不对.
BASH 脚本匹配 IP 地址的 简单例子 (正则表达式). (AMP 移动加速版本)
上一篇: 通过 .htaccess 设置静态资源缓存 来加速网站
下一篇: LINUX 下竖中指

扫描二维码,分享本文到微信朋友圈
b69c11074ead8d9d0bb4efb0d4b1376b BASH 脚本匹配 IP 地址的 简单例子 (正则表达式) LINUX 技术 折腾 程序设计

评论