溫馨提示×

溫馨提示×

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

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

Linux shell怎么判斷IP合法性

發(fā)布時間:2022-02-17 15:43:45 來源:億速云 閱讀:121 作者:iii 欄目:開發(fā)技術

這篇文章主要介紹了Linux shell怎么判斷IP合法性的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇Linux shell怎么判斷IP合法性文章都會有所收獲,下面我們一起來看看吧。

Linux shell怎么判斷IP合法性

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

方法1:

#!/bin/bash    function check_ip() {  
   IP=$1  
   VALID_CHECK=$(echo $IP|awk -F. '$1)  
   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    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

加個循環(huán),如果錯誤則重新輸入,直到正確:

#!/bin/bash    function check_ip() {  
   local IP=$1  
   VALID_CHECK=$(echo $IP|awk -F. '$1)  
   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

關于“Linux shell怎么判斷IP合法性”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“Linux shell怎么判斷IP合法性”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

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

AI