当前位置: 首页 > 编程笔记 >

python和shell实现的校验IP地址合法性脚本分享

谭俊
2023-03-14
本文向大家介绍python和shell实现的校验IP地址合法性脚本分享,包括了python和shell实现的校验IP地址合法性脚本分享的使用技巧和注意事项,需要的朋友参考一下

一、python校验IP地址合法性

执行效果:

python代码:

  

[root@yang python]# vi check_ip.py

#!/usr/bin/python

import os,sys

def check_ip(ipaddr):

        import sys

        addr=ipaddr.strip().split('.')   #切割IP地址为一个列表

        #print addr

        if len(addr) != 4:   #切割后列表必须有4个参数

                print "check ip address failed!"

                sys.exit()

        for i in range(4):

                try:

                        addr[i]=int(addr[i])   #每个参数必须为数字,否则校验失败

                except:

                        print "check ip address failed!"

                        sys.exit()

                if addr[i]<=255 and addr[i]>=0:    #每个参数值必须在0-255之间

                        pass

                else:

                        print "check ip address failed!"

                        sys.exit()

                i+=1

        else:

                print "check ip address success!"

if  len(sys.argv)!=2:  #传参加本身长度必须为2

        print "Example: %s 10.0.0.1 "%sys.argv[0]

        sys.exit()

else:

        check_ip(sys.argv[1])   #满足条件调用校验IP函数

二、shell校验IP地址合法性

执行校果:
  返回值0校验合法,非0不合法。

shell代码:


[root@yang python]# vi check_ip.sh

#!/usr/bin/sh

CheckIPAddr()

{

echo $1|grep "^[0-9]\{1,3\}\.\([0-9]\{1,3\}\.\)\{2\}[0-9]\{1,3\}$" > /dev/null;

#IP地址必须为全数字

        if [ $? -ne 0 ]

        then

                return 1

        fi

        ipaddr=$1

        a=`echo $ipaddr|awk -F . '{print $1}'`   #以"."分隔,取出每个列的值

        b=`echo $ipaddr|awk -F . '{print $2}'`

        c=`echo $ipaddr|awk -F . '{print $3}'`

        d=`echo $ipaddr|awk -F . '{print $4}'`

        for num in $a $b $c $d

        do

                if [ $num -gt 255 ] || [ $num -lt 0 ]     #每个数值必须在0-255之间

                then

                        return 1

                fi

        done

                return 0

}

if [ $# -ne 1 ];then            #判断传参数量

        echo "Usage: $0 ipaddress."

        exit

else

CheckIPAddr $1

fi

 类似资料:
  • 本文向大家介绍Shell脚本实现IP地址合法性判断,包括了Shell脚本实现IP地址合法性判断的使用技巧和注意事项,需要的朋友参考一下 做unix/linux下的开发,脚本编写的功力是少不了的,作为shell编程,也是博大精深的一个技术领域,这里为了学习,就写一个简单的判断IP地址是否合法的微型脚本程序,这个小程序也是非常有用的。 IP地址是32位的,可以由4个十进制数值表示,每个数值的范围都是0

  • 本文向大家介绍Shell脚本实现自动修改IP地址,包括了Shell脚本实现自动修改IP地址的使用技巧和注意事项,需要的朋友参考一下 作为一名Linux SA,日常运维中很多地方都会用到脚本,而服务器的ip一般采用静态ip或者MAC绑定,当然后者比较操作起来相对繁琐,而前者我们可以设置主机名、ip信息、网关等配置。修改成特定的主机名在维护和管理方面也比较方便。如下脚本用途为:修改ip和主机名等相关信

  • 本文向大家介绍Codeigniter校验ip地址的方法,包括了Codeigniter校验ip地址的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Codeigniter校验ip地址的方法。分享给大家供大家参考。具体分析如下: 这里演示了Codeigniter如何获取用户ip地址,同时校验ip地址的有效性 获取用户ip: 希望本文所述对大家基于Codeigniter的php程序设计有所帮

  • 本文向大家介绍Shell脚本中获取本机ip地址的3个方法,包括了Shell脚本中获取本机ip地址的3个方法的使用技巧和注意事项,需要的朋友参考一下 方法一: 方法二: 方法三:

  • 本文向大家介绍Shell脚本实现分析apache日志中ip所在的地区,包括了Shell脚本实现分析apache日志中ip所在的地区的使用技巧和注意事项,需要的朋友参考一下 查询ip地址所用的组件 步骤和nginx是差不多的,只是取日志里面的ip地址的方法不一样~~~ 最后cat 查看~~

  • 本文向大家介绍PowerShell脚本实现网卡DHCP自动获取IP地址、设置静态IP地址的方法,包括了PowerShell脚本实现网卡DHCP自动获取IP地址、设置静态IP地址的方法的使用技巧和注意事项,需要的朋友参考一下 PowerShell设置DHCP自动获取IP地址,PowerShell可以很方便的设置本地计算机启用DHCP来动态获取IP地址,这需要用到WMI扩展。本文介绍详细的脚本程序。