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!
转载于:https://www.cnblogs.com/aaronwxb/archive/2011/08/16/2140380.html
linux shell脚本 检查IP地址格式相关推荐
- Linux Shell脚本检查一个目录是否存在,不存在则创建的方法
在Linux下,检查一个目录是否存在,不存在则创建的方法如下,通过shell文件 if [ ! -d dirname]; then mkdir dirname fi 这里判断名称dirname的目录是 ...
- linux 检查权限,检查目录下 文件的权限-linux shell脚本,
检查目录下 文件的权限-linux shell脚本, #!/bin/bash #History: #2019/07/23 Fsq #This Program will check Permiss ...
- 批量ping脚本shell_30个Linux Shell脚本经典案例(上)
在学习Linux运维时,普遍反馈是:Linux Shell是一个很难的知识板块.虽然大家都认真学,基本的语法也都掌握了,但有需求时,很难直接上手编程,要么写了很久,要么写不好! 也有很多做运维很多年的 ...
- 100个Linux Shell脚本经典案例
kill `ps -ef | grep redis | awk '{print $2}'` grep -w '\|aa\|bb' Linux 根据端口号杀进程的.sh脚本_xie_app ...
- LINUX SHELL脚本攻略笔记[速查]
LINUX SHELL脚本攻略笔记[速查] Linux Shell脚本攻略笔记[速查] 资源 shell script run shell script echo printf 环境变量和变量 pgr ...
- Linux shell脚本基础学习
Linux shell脚本基础学习这里我们先来第一讲,介绍shell的语法基础,开头.注释.变量和 环境变量,向大家做一个基础的介绍,虽然不涉及具体东西,但是打好基础是以后学习轻松地前提. 1. Li ...
- linux运维实战练习及linux shell脚本、awk、sed工具命令学习总结
一.linux shell 脚本 1.描述shell程序的运行原理(可附带必要的图形说明): Linux系统的shell作为操纵系统的外壳,为用户提供使用操纵系统的接口.它是命令语言.命令解释程序及程 ...
- linux shell脚本字符串连接符,学习Linux shell脚本中连接字符串的方法
这篇文章主要介绍了Linux shell脚本中连接字符串的方法,如果想要在变量后面添加一个字符,可以用一下方法: 代码如下: $value1=home $value2=${value1}"= ...
- Linux Shell脚本入门--wget 命令用法详解
Linux Shell脚本入门--wget 命令用法详解 wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上.它有以下功能 ...
最新文章
- 计算机思维采用抽象和分解,凤凰机器人----什么是计算思维?凤凰机器人的编程课中是如何体现它的?...
- PostgreSQL 10.1 手册_前言_2. PostgreSQL简史
- 最小生成树之Kruskal
- 字符之间或者结构体之间比较
- 纯JavaScript实现的调用设备摄像头并拍照的功能
- 简单调试 Bash 脚本
- csv导入mysql phpmyadmin_关于mysql:使用phpMyAdmin导入大型csv文件
- 时序数据库InfluxDB 2.0 alpha 发布:主推新的Flux查询语言,TICK栈将成为整体
- Oracle 11g 服务名称以及作用
- 2021-08-3126. 删除有序数组中的重复项 数组
- 计算机网络arp表作用,arp映射表是什么?有什么作用
- USRP系列(一):软件定义无线电(SDR)
- mysql 客户端命令行_Windows的MySQL命令行客户端
- 给网页加一个全屏转场动画 HTML JS
- web 系统原理之路由器和交换机的区别
- 开发手札:git日常抽风记录
- iOS 四舍六入五成双算法
- 《期权、期货及其他衍生产品》读书笔记(第三章:利用期货的对冲策略)
- 专业程序员开发-老狼孩插件懒人精灵版
- Word2vec看我这一篇就足够应付面试了
热门文章
- Anaconda不同平台的安装方式
- HBase伪分布式搭建
- jdbc executebatch 非事务_面试:Mybatis事务请讲解一下?
- pySpark | pySpark.Dataframe使用的坑 与 经历
- 前端05.js入门之BOM对象与DOM对象。
- Android触控屏幕Gesture(GestureDetector和SimpleOnGestureListener的使用教程) 分类:Androidandroid实例...
- Redis应用实践:小红书海量Redis存储之道
- 关于在arm裸板编程时使用printf问题的解决方法
- linux下PowerDNS不完全配置
- idea阅读器插件开发实现