Shell脚本判断IP地址是否合法的方法
使用shell校验IP地址合法性
[root@yang python]# bash check_ip.sh 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地址合法性 使用方法: 复制代码 代码如下: [root@yang python]# bash check_ip.sh IP地址 执行结果:返回值0校验合法,非0不合法.shell代码: 复制代码 代码如下: [root@yang python]# vi check_ip.sh #!/usr/bin/shCheckIPAddr(){echo $1|grep "^[0-9]\{1,3\}\.\([0-9]\{1,3\}\.\)\{2\}[0-9]\{1,3\}$"
-
Shell脚本实现IP地址合法性判断
做unix/linux下的开发,脚本编写的功力是少不了的,作为shell编程,也是博大精深的一个技术领域,这里为了学习,就写一个简单的判断IP地址是否合法的微型脚本程序,这个小程序也是非常有用的. IP地址是32位的,可以由4个十进制数值表示,每个数值的范围都是0~255. 复制代码 代码如下: #!/bin/bash # Test an IP address for validity: # Usage: # valid_ip IP_ADDRESS # if [[ $? -e
-
使用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: #
-
Java判断IP地址为内网IP还是公网IP的方法
本文实例讲述了Java判断IP地址为内网IP还是公网IP的方法.分享给大家供大家参考.具体分析如下: tcp/ip协议中,专门保留了三个IP地址区域作为私有地址,其地址范围如下: 10.0.0.0/8:10.0.0.0-10.255.255.255 172.16.0.0/12:172.16.0.0-172.31.255.255 192.168.0.0/16:192.168.0.0-192.168.255.255 那么,直接上代码吧: 复制代码 代码如下: public static boolea
-
Java判断本机IP地址类型的方法
复制代码 代码如下: package net; import java.net.*; /* * getAddress方法和getHostAddress类似,它们的唯一区别是getHostAddress方法返回的是字符串形式的IP地址, * 而getAddress方法返回的是byte数组形式的IP地址. * Java中byte类型的取值范围是-128?127.如果返回的IP地址的某个字节是大于127的整数,在byte数组中就是负数. * 由于Java中没有无符号byte类型,因此,
-
python3判断IP地址的方法
本文实例为大家分享了python3判断IP地址的具体代码,供大家参考,具体内容如下 输入一串字符,判断该字符串是否为点分十进制的IP地址,若是则转换为16进制输出,否则输出"Error" 注意:输入可能是任意的一个字符串,比如"abc.bas.fefe.4r4"或者"23.23.11.23.123" 这都是不合法的IP地址 例如 输入:192.41.6.20 输出:0xC0290614 输入:257.32.23.1 输出:Error 解1 imp
-
使用shell脚本判断文件后缀的方法实例
目录 shell脚本判断文件后缀 附shell提取文件后缀名,并判断其是否为特定字符串 总结 shell脚本判断文件后缀 有时候需要判断文件名后缀来区分文件类型,进而进行不同的操作.以下是获取文件名后缀和文件名前缀的两个函数,由于shell脚本函数只能返回0-255,为了将结果返回,就直接使用echo输出,可以用$()进行捕获. #!/bin/bash # ----------------------------------------------------------------------
-
Java 判断IP地址的合法性实例详解
Java 判断IP地址的合法性 0.前言 有时候我们要对用户输入的IP地址进行校验,判断这个IP地址是不是一个合法的IP地址. 1.实现思路 最简单的实现方法是构造一个正则表达式.判断用户的输入与正则表达式是否匹配.若匹配则是正确的IP地址,否则不是正确的IP地址.这里的难点是如何构造出一个可用的正则表达式. 2.Java实现 /** * Created by HUPENG on 2016/9/26. */ public class Tool { /** * 判断IP地址的合法性,这里采用了正则
-
Android 判断ip地址合法实现代码
Android 判断ip地址合法实现代码 昨天,我在网上找了一下判断文本框内的字符串是否是合法的ip地址,自己想到了正则表达式,可是自己对这个却不熟,所以在网上查找了一些资料,最后终于是做出来了. 具体的代码很简单, public boolean isIP(String addr) { if(addr.length() < 7 || addr.length() > 15 || "".equals(addr)) { return false; } /** * 判断IP格式和范
-
Linux下使用Shell脚本获取终端宽度的解决方法
获取终端大小时候的学习 在写shell脚本时想输出一行占满整个终端屏幕宽度的 横杠 发现for循环会导致执行缓慢 解决方法: 使用yes 命令 sed '50q' 显示50行 tr -d '\n' 删除 \n 多次重复输入相同字符可用yes yes "2" | sed '50q' | tr -d '\n' 想法来自:打印100个连续的符号,不用循环 ---------------------------------------------------------------------
随机推荐
- mybatis调用存储过程的实例代码
- 用AJAX实现页面登陆以及注册用户名验证的简单实例
- 简单介绍Ruby on Rails对PostgreSQL数组类型的支持
- JS实现的3D拖拽翻页效果代码
- php在多维数组中根据键名快速查询其父键以及父键值的代码
- linux mysql 报错:MYSQL:The server quit without updating PID file
- php实现对两个数组进行减法操作的方法
- 纯JS实现可拖拽表单的简单实例
- 服务端配置实现AJAX跨域请求
- Javaweb开发环境Myeclipse6.5 JDK1.6 Tomcat6.0 SVN1.8配置教程
- 史上最欠扁的八大鬼故事
- 在每个匹配元素的外部插入新元素的方法
- 定义select的边框颜色
- C语言中堆空间的生成与释放详解
- 随机加密程序的实现方法
- Windows下Anaconda的安装和简单使用方法
- mysql show操作简单示例
- 详解SpringCloud微服务架构之Hystrix断路器
- jQuery使用bind动态绑定事件无效的处理方法
- python的pytest框架之命令行参数详解(下)