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

首頁 > 開發(fā) > Linux Shell > 正文

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

2020-07-27 19:06:26
字體:
供稿:網(wǎng)友

在運(yùn)維場景下,我們經(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)):

復(fù)制代碼 代碼如下:

#!/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ā)表
主站蜘蛛池模板: 格尔木市| 二手房| 满洲里市| 文登市| 五台县| 栾川县| 抚顺县| 海淀区| 金堂县| 会宁县| 苍梧县| 攀枝花市| 六安市| 淳安县| 西畴县| 城市| 江达县| 炉霍县| 夏河县| 东乡族自治县| 瓮安县| 墨脱县| 磴口县| 家居| 和顺县| 湟中县| 尚义县| 沂源县| 富蕴县| 淳安县| 包头市| 周口市| 咸丰县| 宁乡县| 灵石县| 遂溪县| 峨山| 温州市| 齐齐哈尔市| 通辽市| 洮南市|