这篇文章主要介绍了Linux shell怎么判断IP合法性的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Linux shell怎么判断IP合法性文章都会有所收获,下面我们一起来看看吧。

思路:IP由四位数字组成,以点分割,每个字段不能大于255,必须符合这种格式。

方法1:

#!/bin/bashfunctioncheck_ip(){IP=$1VALID_CHECK=$(echo$IP|awk-F.'$1)ifecho$IP|grep-E"^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$">/dev/null;thenif[${VALID_CHECK:-no}=="yes"];thenecho"IP$IPavailable."elseecho"IP$IPnotavailable!"fielseecho"IPformaterror!"fi}#Examplecheck_ip192.168.1.1check_ip256.1.1.1方法2:

#!/bin/bashfunctioncheck_ip(){IP=$1if[[$IP=~^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$]];thenFIELD1=$(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-le255-a$FIELD2-le255-a$FIELD3-le255-a$FIELD4-le255];thenecho"IP$IPavailable."elseecho"IP$IPnotavailable!"fielseecho"IPformaterror!"fi}#Examplecheck_ip192.168.1.1check_ip256.1.1.1加个循环,如果错误则重新输入,直到正确:

#!/bin/bashfunctioncheck_ip(){localIP=$1VALID_CHECK=$(echo$IP|awk-F.'$1)ifecho$IP|grep-E"^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$">/dev/null;thenif[$VALID_CHECK=="yes"];thenecho"IP$IPavailable!"return0elseecho"IP$IPnotavailable!"return1fielseecho"IPformaterror!"return1fi}whiletrue;doread-p"PleaseenterIP:"IPcheck_ip$IP[$?-eq0]&&breakdone

关于“Linux shell怎么判断IP合法性”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“Linux shell怎么判断IP合法性”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注亿速云行业资讯频道。