91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Shell腳本判斷IP是否合法性(多種方法)

發布時間:2020-04-01 17:43:05 來源:網絡 閱讀:22560 作者:李振良OK 欄目:開發技術

運維角度來說,寫shell腳本經常會遇到判斷輸入的值是否合法,比如IP、郵件地址等。那么,根據自身寫腳本中總結的判斷IP合法性腳本分享給網友,遇到時能有所參考。

思路:IP由四位數字組成,以點分割,每個字段不能大于255,必須符合這種格式

方法1:

#!/bin/bash
# blog: http://lizhenliang.blog.51cto.com
 
function check_ip() {
    IP=$1
    VALID_CHECK=$(echo $IP|awk -F. '$1<=255&&$2<=255&&$3<=255&&$4<=255{print "yes"}')
    if echo $IP|grep -E "^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$">/dev/null; then
        if [ ${VALID_CHECK:-no} == "yes" ]; then
            echo "IP $IP available."
        else
            echo "IP $IP not available!"
        fi
    else
        echo "IP format error!"
    fi
}
# Example
check_ip 192.168.1.1
check_ip 256.1.1.1


方法2:

#!/bin/bash
# blog: http://lizhenliang.blog.51cto.com
 
function check_ip() {
    IP=$1
    if [[ $IP =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
        FIELD1=$(echo $IP|cut -d. -f1)
        FIELD2=$(echo $IP|cut -d. -f2)
        FIELD3=$(echo $IP|cut -d. -f3)
        FIELD4=$(echo $IP|cut -d. -f4)
        if [ $FIELD1 -le 255 -a $FIELD2 -le 255 -a $FIELD3 -le 255 -a $FIELD4 -le 255 ]; then
            echo "IP $IP available."
        else
            echo "IP $IP not available!"
        fi
    else
        echo "IP format error!"
    fi
}
# Example
check_ip 192.168.1.1
check_ip 256.1.1.1


加個循環,如果錯誤則重新輸入,直到正確:

#!/bin/bash
# blog: http://lizhenliang.blog.51cto.com
 
function check_ip() {
    local IP=$1
    VALID_CHECK=$(echo $IP|awk -F. '$1<=255&&$2<=255&&$3<=255&&$4<=255{print "yes"}')
    if echo $IP|grep -E "^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$" >/dev/null; then
        if [ $VALID_CHECK == "yes" ]; then
         echo "IP $IP  available!"
            return 0
        else
            echo "IP $IP not available!"
            return 1
        fi
    else
        echo "IP format error!"
        return 1
    fi
}
while true; do
    read -p "Please enter IP: " IP
    check_ip $IP
    [ $? -eq 0 ] && break
done


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

张家口市| 防城港市| 湾仔区| 德保县| 吕梁市| 昭觉县| 元江| 武胜县| 胶州市| 泗水县| 安徽省| 泾阳县| 集安市| 南雄市| 福泉市| 日土县| 临泽县| 灵武市| 阿勒泰市| 富裕县| 巨鹿县| 尤溪县| 临沭县| 当阳市| 象州县| 高淳县| 阿拉善左旗| 鄂州市| 绥中县| 道孚县| 万全县| 措美县| 枣庄市| 吉木乃县| 信宜市| 大同县| 邵阳县| 江源县| 兖州市| 鞍山市| 连云港市|