在shell中使用正則表達式,判斷域名


正則表達式匹配域名

^(http(s)?:\/\/)?[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+(:[0-9]{1,5})?$

在shell中使用

read -p "請輸入域名: " input_domain
echo "域名為: $input_domain"

flag=$(echo $input_domain | gawk '/^(http(s)?:\/\/)?[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+(:[0-9]{1,5})?$/{print $0}')
if [ ! -n "${flag}" ]; then
    echo "請輸入正確的域名"
fi

循環

domain_flag=''
until [ "$domain_flag" != '' ]
do
    read -p "請輸入域名: " input_domain
    echo "域名為: $input_domain"
    domain_flag=$(echo $input_domain | gawk '/^(http(s)?:\/\/)?[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+(:[0-9]{1,5})?$/{print $0}')
    if [ ! -n "${domain_flag}" ]; then
        echo "域名有誤,請重新輸入!!!"
    fi
done


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM