zoukankan      html  css  js  c++  java
  • linux shell脚本 检查IP地址格式

    网上好多检查IP地址格式的脚本,大都看起来让人晕乎乎的。。

    这里贴一个我自己写的比较简单易懂的脚本,根据自己的需要稍加改动应该就可以用了~~~

    #!/bin/sh

    ip_string="1.1.1.1,-.2.2.2" ——多个ip用“,”分隔

    checkip() {

            local flag=0

            for tmp_ip in `echo $ip_string| awk -F "," '{ i=1;while(i<=NF) {print $i;i++}}'`

            do

                    local num

                    num=`echo $tmp_ip | awk -F "." '{print NF}'`

                    if [ "$num" != "4" ];then

                            echo "ip $tmp_ip format error!"

                            exit 1

                    fi

                    a=`echo $tmp_ip | awk -F. '{print $1}' | sed "s/[^0-9]//g"`

                    b=`echo $tmp_ip | awk -F. '{print $2}' | sed "s/[^0-9]//g"`

                    c=`echo $tmp_ip | awk -F. '{print $3}' | sed "s/[^0-9]//g"`

                    d=`echo $tmp_ip | awk -F. '{print $4}' | sed "s/[^0-9]//g"`

                    if [ -z "$a" ] || [ $a -le 0 -o $a -ge 255 ]

                    then

                            echo "ip $tmp_ip format error!"

                            exit 1

                    fi

                    if [ -z "$b" ] || [ $b -le 0 -o $b -ge 255 ]

                    then

                            echo "ip $tmp_ip format error!"

                            exit 1

                    fi

                    if [ -z "$c" ] || [ $c -le 0 -o $c -ge 255 ]

                    then

                            echo "ip $tmp_ip format error!"

                            exit 1

                    fi

                    if [ -z "$d" ] || [ $d -le 0 -o $d -ge 255 ]

                    then

                            echo "ip $tmp_ip format error!"

                            exit 1

                    fi

            done

    }

    checkip $ip_string

    执行结果如下:

    [root@localdomain]# sh test.sh 

    ip -.2.2.2 format error!

  • 相关阅读:
    [转贴]中国铁塔发布2020年中期财报:营收、利润双增,高效支撑5G规模建设
    struts2总结二:第一个简单的struts2程序
    struts2总结一:MVC设计模式
    解决eclipse报PermGen space内存溢出异常的问题
    java中new关键字和newInstance()方法有什么区别?
    java反射机制
    在easyui中如何修改combobox的下拉框的高度为自适应高度
    百度UEditor从word复制粘贴公式
    百度富文本编辑器从word复制粘贴图片
    HTML编辑器从word复制粘贴图片
  • 原文地址:https://www.cnblogs.com/aaronwxb/p/2140380.html
Copyright © 2011-2022 走看看