论点:IF判断—多层意思的多条件判断应该每层意思进行判断,逻辑分层。
论点解释:
材料:需要对输入的IP进行判断是否合法。如何进行条件判断?
分解:
1、IP要满足最小最大长度。
2、点分十进制除点之外的4部分都不能为空。
3、点分十进制除点之外的4部分都只能是【0-9】组成的复合数字。
4、点分十进制除点之外的4部分,每部分值必须小于255。
分析:只要1-4条件满足理论上应该是合法的IP了。不考虑其它判断和字符串分解操作,若通过1 个if语句来达到合法IP的判断:
假设:输入IP为x,拆分的4部分为a b c d,
那么1个if判断写法:
if [ x -ge 7 ] && [ x -le 15 ] && [ a ] && [ b ] && [ c ] && [ d ] &&\
! ( echo a | grep -q '[^0-9]' ) && ! ( echo b | grep -q '[^0-9]') && ! ( echo c | grep -q '[^0-9]') \
&& ! ( echo d | grep -q '[^0-9]') && [ a -lt 255 ] && [ b -lt 255 ] && [ c -lt 255 ]\
&& [ d -lt 255 ] ;then
echo -e "a.b.c.d 是合法IP\n"
fi
上面只是为了表示大概意思, 这种写法! (