编写一个判断IP地址合法性的bash脚本
来源:互联网 发布:linux 竖线 编辑:程序博客网 时间:2024/05/16 01:44
做unix/linux下的开发,脚本编写的功力是少不了的,作为shell编程,也是博大精深的一个技术领域,这里为了学习,就写一个简单的判断IP地址是否合法的微型脚本程序,这个小程序也是非常有用的。
IP地址是32位的,可以由4个十进制数值表示,每个数值的范围都是0~255.
#!/bin/bash# Test an IP address for validity:# Usage:# valid_ip IP_ADDRESS# if [[ $? -eq 0 ]]; then echo good; else echo bad; fi# OR# if valid_ip IP_ADDRESS; then echo good; else echo bad; fi#function valid_ip(){ local ip=$1 local stat=1 if [[ $ip =~ ^[0-9]{1,3}/.[0-9]{1,3}/.[0-9]{1,3}/.[0-9]{1,3}$ ]]; then OIFS=$IFS IFS='.' ip=($ip) IFS=$OIFS [[ ${ip[0]} -le 255 && ${ip[1]} -le 255 / && ${ip[2]} -le 255 && ${ip[3]} -le 255 ]] stat=$? fi return $stat}# If run directly, execute some tests.if [[ "$(basename $0 .sh)" == 'valid_ip' ]]; then ips=' 4.2.2.2 a.b.c.d 192.168.1.1 0.0.0.0 255.255.255.255 255.255.255.256 192.168.0.1 192.168.0 1234.123.123.123 ' for ip in $ips do if valid_ip $ip; then stat='good'; else stat='bad'; fi printf "%-20s: %s/n" "$ip" "$stat" donefi
如果你存储成valid_ip.sh直接运行就可以得到如下结果
# sh valid_ip.sh 4.2.2.2 : good a.b.c.d : bad 192.168.1.1 : good 0.0.0.0 : good 255.255.255.255 : good 255.255.255.256 : bad 192.168.0.1 : good 192.168.0 : bad 1234.123.123.123 : bad
- 编写一个判断IP地址合法性的bash脚本
- Linux学习之道:编写一个判断IP地址合法性的bash脚本
- 判断IP地址的合法性
- 判断IP地址的合法性
- 利用HTML+JAVASCRIPT编写的判断IP地址合法性,并将其合法IP地址分类
- C 判断IP地址的合法性
- python怎么判断IP地址的合法性
- 判断IP地址的合法性(Java)
- 判断IP地址的合法性(Java)
- C++判断IP地址字符串的合法性
- Java判断IP地址合法性
- [javascript]判断ip地址合法性
- 面试题初级-求字符串最后一个单词的长度和判断ip地址的合法性
- ip的合法性判断
- 如何利用js正则表达式判断ip地址的合法性
- 如何js正则表达式判断ip地址的合法性?
- javascript 正则表达式判断IP地址合法性
- 判断一个子网掩码的合法性
- SSE指令集
- UDP Socket编程 C/C++实现 (Windows Platform SDK)
- 认真的学习~轻量级框架
- 用servlet生成验证码
- SAP Enhancement系列:Badi
- 编写一个判断IP地址合法性的bash脚本
- 用户控件VS自定义控件(msdn)
- JavaScript 幻灯片 脚本代码
- 伪指令LTORG
- Visual Studio 2008 安装错误所需 WebDesignerCore 与 WinSDK_Build 文件下载
- 《0肥仔C笔记——7月4日》
- 人的70年
- Difference of Getting DOM ElementsM Between IE6 & FF2
- Heritrix 在 elipse下的配置