Linux shell脚本练习(七)
check_ip,检查ip格式是否正确
#!/bin/bash
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
return 0
else
echo "$IP not available!"
return 1
fi
else
echo "Format error! Please input again."
return 1
fi
}
while true; do
read -p "Please enter IP: " IP
check_ip $IP
[ $? -eq 0 ] && break || continue
done
[root@iZ2vcgxbgi6b6kbx279yozZ test]# vim check_ip.sh
[root@iZ2vcgxbgi6b6kbx279yozZ test]# ./check_ip.sh
Please enter IP: 1.1.1.1
[root@iZ2vcgxbgi6b6kbx279yozZ test]# ./check_ip.sh
Please enter IP: 0.0
Format error! Please input again.
Please enter IP: 192.168.1.1
[root@iZ2vcgxbgi6b6kbx279yozZ test]#