欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時(shí)間:2015年05月27日 12:00:11   投稿:junjie  
這篇文章主要介紹了Shell腳本中通過(guò)正則表達(dá)式匹配IP地址,本文直接給出實(shí)現(xiàn)代碼,需要的朋友可以參考下

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

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

下面以ip="121.0.2.2"為例,shell腳本代碼如下(當(dāng)然,你要做成更通用交互式的腳本,可以通過(guò)expect來(lái)實(shí)現(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

相關(guān)文章

最新評(píng)論