国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Linux > 正文

Shell腳本中通過正則表達(dá)式匹配IP地址

2019-10-26 18:46:10
字體:
供稿:網(wǎng)友

在運維場景下,我們經(jīng)常需要在服務(wù)器上用正則表達(dá)式來匹配IP地址。

shell和其它編程語言一樣,也可以使用正則分組捕獲,不過不能使用 $1或/1這樣的形式來捕獲分組,可以通過數(shù)組${BASH_REMATCH}來獲得,如${BASH_REMATCH[1]},${BASH_REMATCH[N]}

下面以ip="121.0.2.2"為例,shell腳本代碼如下(當(dāng)然,你要做成更通用交互式的腳本,可以通過expect來實現(xiàn)):
代碼如下:
#!/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

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 盐边县| 汤原县| 禄劝| 兴海县| 凤凰县| 广饶县| 南靖县| 山丹县| 广元市| 时尚| 临江市| 泸州市| 六盘水市| 图们市| 龙陵县| 射阳县| 临安市| 临西县| 永福县| 墨竹工卡县| 遂川县| 桑植县| 班戈县| 松江区| 赤峰市| 新邵县| 泽库县| 五家渠市| 五常市| 屏边| 建始县| 太白县| 衡水市| 达州市| 西充县| 秦皇岛市| 缙云县| 弋阳县| 莱州市| 南木林县| 南召县|