linux while和until循环项目案例

 项目脚本案例



1. 判断局域网主机存活脚本(主要吸取判断方法,利用until判断,避免多次使用if条件判断)


#!/bin/bash

declare -i  i=0

declare -i  j=1

#++++++++++++++++++++利用until判断用户输入是否合法++++++++++++++++++++++++++++++++++++++

until [[  $netid =~ ([0-9]{1,3}\.){3}[0-9]{1,3} ]];do  #如果满足条件则退出循环,否则进入循环

read -p "Input  network(eg:192.168.0.0): " netid

let i++

if [ $i -eq 3 ];then                            #如果3次错误输入,则退出脚本

echo "Input network times  out!"

exit 1

fi

done

net=`echo  $netid|cut -d. -f1-3`

#+++++++++++++++++++++++ping function++++++++++++++++++++++++++++++++++++++++++++++++++++

Ping () {                                               #定义函数ping的主体

while [ $j  -lt 255 ];do

if ping -c1 -w1 $net.$j  &>/dev/null;then

echo "$net.$j is  up"

else

echo "$net.$j is  down"

fi

let j++

done

}

Ping                                                    #调用函数

2.利用while循环及调用系统本身function,每2s监控网站是否正常?


#!/bin/bash

.  /etc/rc.d/init.d/functions                           #执行系统函数调用

#+++++++++++++++++++++arg  select+++++++++++++++++++++++++++++++++++++++++++++++++++++

if [ $# -ne 1 ];then

echo  $"usage $0 url"

exit 1

fi

#++++++++++++++++++++web  monitor+++++++++++++++++++++++++++++++++++++++++++++++++++++

flag=`curl -o /dev/null --connect-timeout 5 -s -w  "%{http_code}" $1|egrep -w "200|301|302"|wc -l`

run (){

while true;do

if [ $flag  -ne 1 ];then

action  "$1 is error." /bin/false    #调用系统函数action,其中fales时echo $? 假

else

action  "$1 is ok." /bin/true

fi                                               #action函数再次调用一系列函数组成ok和fail

sleep 2

done

}

run "$1"

[[email protected] ~/test]#./curl.sh http://www.baidu.com
http://www.baidu.com is ok.                                [  OK  ]
http://www.baidu.com is ok.                                [  OK  ]

时间: 2024-11-06 09:58:32

linux while和until循环项目案例的相关文章

网站日志分析项目案例(二)数据清洗(MiniMapreduce)

网站日志分析项目案例(二)数据清洗 一.数据情况分析 1.1 数据情况回顾 该论坛数据有两部分: (1)历史数据约56GB,统计到2012-05-29.这也说明,在2012-05-29之前,日志文件都在一个文件里边,采用了追加写入的方式. (2)自2013-05-30起,每天生成一个数据文件,约150MB左右.这也说明,从2013-05-30之后,日志文件不再是在一个文件里边. 图1展示了该日志数据的记录格式,其中每行记录有5部分组成:访问者IP.访问时间.访问资源.访问状态(HTTP状态码).

Hadoop学习笔记—20.网站日志分析项目案例(三)统计分析

网站日志分析项目案例(一)项目介绍:http://www.cnblogs.com/edisonchou/p/4449082.html 网站日志分析项目案例(二)数据清洗:http://www.cnblogs.com/edisonchou/p/4458219.html 网站日志分析项目案例(三)统计分析:当前页面 一.借助Hive进行统计 1.1 准备工作:建立分区表 为了能够借助Hive进行统计分析,首先我们需要将清洗后的数据存入Hive中,那么我们需要先建立一张表.这里我们选择分区表,以日期作

Hadoop学习笔记—20.网站日志分析项目案例(二)数据清洗

网站日志分析项目案例(一)项目介绍:http://www.cnblogs.com/edisonchou/p/4449082.html 网站日志分析项目案例(二)数据清洗:http://www.cnblogs.com/edisonchou/p/4458219.html 一.数据情况分析 1.1 数据情况回顾 该论坛数据有两部分: (1)历史数据约56GB,统计到2012-05-29.这也说明,在2012-05-29之前,日志文件都在一个文件里边,采用了追加写入的方式. (2)自2013-05-30

数据库编程3 Oracle 子查询 insert update delete 事务 回收站 字段操作 企业级项目案例

[本文谢绝转载原文来自http://990487026.blog.51cto.com] <大纲> 数据库编程3 Oracle 子查询 insert update delete 事务 回收站 字段操作 企业级项目案例 实验所用数据表 子查询,解决一步不能求解 查询工资比scott高的员工信息: 子查询知识体系搭建: 解释3,查询部门是sales的员工信息: 方法1:子查询 [方法2]:多表: 优化考虑: 解释4[select],只能放单行子查询 解释4[from] 考题:显示员工姓名,薪水 解释

spring+springmvc+hibernate架构、maven分模块开发例子小项目案例

maven分模块开发例子小项目案例 spring+springmvc+hibernate架构 以用户管理做测试,分dao,sevices,web层,分模块开发测试!因时间关系,只测查询成功,其他的准备在ext上做个完整的案例来的,可惜最近时间很紧, 高级部分也没做测试,比如建私服,其他常用插件测试之类的,等用时间了我做个完整ext前端和maven 完整的例子出来,在分享吧! 不过目前这些撑握了,在项目中做开发是没有问题的,其他高级部分是架构师所做的. 之前我有的资源都加上了积分,有些博友向我要,

精准测试之项目案例实战大剖析

一.        前言测试是保证产品质量的关键环节,不论是从开发人员开始的单元测试,集成测试,到测试人员的系统测试,产品的需求测试,客户的验收测试,都是为了保证产品能够更健壮的在市场上服务于用户,但是测试的整个工作和过程并不像开发的工作一样有一个产品的产出,所以更大程度上增加了对测试工作质量的考核,也就造成了对产品测试完成后无法有一个可靠的依据去判断是否能够保证产品在市场中稳定运行,测试过程中也必然存在着在各种各样的问题和困难.在传统的测试中,测试后期往往会出现如下几个问题:1.       

Linux tomcat部署War包,Linux在Tomcat部署JavaWeb项目,Linux部署War包

Linux tomcat部署War包,Linux在Tomcat部署JavaWeb项目,Linux部署War包 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ©Copyright 蕃薯耀 2017年3月6日 http://www.cnblogs.com/fanshuyao/ 一.Linux快速部署W

Linux之LVM 之见解带案例

LVM 逻辑卷管理LVM是硬盘的一个系统工具.无论在Linux或者其他类似的系统,都是非常的好用.传统分区使用固定大小分区,重新调整大小十分麻烦.但是,LVM可以创建和管理"逻辑"卷,而不是直接使用物理硬盘.可以让管理员弹性的管理逻辑卷的扩大缩小,操作简单,而不损坏已存储的数据.可以随意将新的硬盘添加到LVM,以直接扩展已经存在的逻辑卷.LVM并不需要重启就可以让内核知道分区的存在. LVM在线解析:http://baike.baidu.com/view/361916.htm?fr=a

spring+springmvc+hibernate架构、maven分模块开发样例小项目案例

maven分模块开发样例小项目案例 spring+springmvc+hibernate架构 以用户管理做測试,分dao,sevices,web层,分模块开发測试!因时间关系.仅仅測查询成功.其它的准备在ext上做个完整的案例来的,可惜近期时间非常紧. 高级部分也没做測试,比方建私服,其它经常使用插件測试之类的,等用时间了我做个完整ext前端和maven 完整的样例出来,在分享吧. 只是眼下这些撑握了.在项目中做开发是没有问题的,其它高级部分是架构师所做的. 之前我有的资源都加上了积分,有些博友