1、工作场景

  最近遇到一个比较难解决的问题,每天需要Ping大量的IP地址,并且需要将正常、异常的IP地址皆导出来,如果手动Ping则至少需要几个小时,后来就在linux中用shell编写了一个简单的群Ping脚本,只需要把需要Ping的地址放在文件中就可以了。

2、主脚本命令

#!/bin/bash
#运行IP测试脚本。
for IP in `cat IP.txt`        #ip.txt需要提前创建,并且把需要ping的ip存放进去。
doping -c 1 -i 0.2 -W 1 $IP &> /dev/nall      #-c 设定尝试的次数,-i 每个数据发送的间隔,-W 超时等待的时间,/dev/nall是将结果存入黑洞中。if [ $? -eq 0 ]        #判断上面的结果是否为正确,正确为0,错误为1。thenecho "$IP yes "      #在界面上输出正常的IP。echo $IP &>> yes.txt      #并且将正常的IP存放至yes文件中。elseecho "$IP no "       #在界面上输出异常的IP。echo $IP &>> no.txt      #并且将异常的IP存放至no文件中。fi
done

3、整体脚本

  由于需要每天Ping,产生出来的yes和no的文件需要先删除才能执行脚本,否则会追加,所以在脚本之前又添加了一个判断文件的脚本,并且还需要将每天存活的IP与已知的正常IP进行比较,所以就整体结合起来了。

#!/bin/bash
#先删除上次遗留的结果输出文件。
if [[ -e yes.txt && -e no.txt ]]
thenrm -rf yes.txtrm -rf no.txtecho "已删除yes文件与no文件"
elif [ -e yes.txt ]
thenrm -rf yes.txtecho "已删除yes文件"
elif [ -e no.txt ]
thenrm -rf no.txtecho "已删除no文件"
elseecho "未找到yes文件与no文件"
fi#运行IP测试脚本。
for IP in `cat IP.txt`
doping -c 1 -i 0.2 -W 1 $IP &> /dev/nallif [ $? -eq 0 ]thenecho "$IP yes "echo $IP &>> yes.txt   elseecho "$IP no "echo $IP &>> no.txt   fi
done#比较。
diff -c zq.txt yes.txt > bj.txt

Linux中ping脚本相关推荐

  1. linux中间隔10ping一次脚本,linux批量ping脚本shell

    linux批量ping脚本shell *ping失败后的返回字符串 5 packets transmitted, 0 received, 100% packet loss, time 3999ms* ...

  2. Linux中ping不通外网

    在linux中ping www.baidu.com 无法ping通,可能原因是DNS没配置好 方法一: 修改vi /etc/resolv.conf 增加如下内容: nameserver 114.114 ...

  3. linux一键分区脚本,【Shell】Linux中分区脚本

    后天要中期答辩了,今天只刷了一个题,还没写出来,但是想更新博客,所以只有把之前写的东西贴出来了. 一个用于分区的shell脚本 1 #!/bin/bash #指定脚本解释器路径 2 echo &quo ...

  4. Linux中 shell 脚本获取当前工作目录的方法

    Linux中 shell 脚本获取当前工作目录的方法 1. 示例 2. 注意: 参考: 1. 示例 test.sh target_dir=$(cd $(dirname $0); pwd) echo $ ...

  5. linux怎么运行脚本文件路径,关于linux中执行脚本或程序时指定的路径

    假设/mnt/bin 目录下存在一个名为 hello.sh 的可执行文件. 1. 若当前目录是 /mnt/bin ,可以使用 ./hello.sh 来执行这个可执行文件,但是使用 hello.sh 就 ...

  6. linux存放脚本目录,linux中Shell脚本所在目录的绝对路径linux操作系统 -电脑资料...

    linux shell 脚本里面如果想得到当前脚本文件存放的绝对路径,也没有太现成的命令可以调用,不过可以通过下面的语句来获取:代码如下复制代码 baseDirForScriptSelf=$(cd & ...

  7. linux 自动ping脚本,linux上ping脚本及zabbix3.xx上自动发现

    有时候,我们需要在linux上ping一些地址,判断地址是否被占用 一.编写shell脚本 脚本如下:#!/bin/bash for i in 192.168.16.{1..255} do ( pin ...

  8. Linux中写脚本,同时去开启我们自己设定的多个服务(含定时脚本实现)

    场景介绍: 在Linux中,我们通常开启服务需要使用systemctl start 服务名 命令,这样,如果开启一个服务还好,但是如果同时开启多个服务,难免会感到麻烦,这时,我们可以自定义一个脚本,去 ...

  9. Linux 中shell脚本编写教程

    1.文本处理工具 1.1 grep工具 Linux grep 命令用于查找文件里符合条件的字符串.  grep [选项] '关键字 文件名 grep 指令用于查找内容包含指定的范本样式的文件,如果发现 ...

  10. Linux中Shell脚本编程

    一.shell定义与执行 shell既是一种应用程序,又是一种程序设计语言 shell是用户和Linux内核之间的接口程序 >作为应用程序: 交互式地解释.执行用户输入的命令,将用 户的操作翻译 ...

最新文章

  1. 样式集(五)微信朋友圈样式模拟
  2. AI拟音师出击,轻松骗过人类观众:你听到的电影音效可能来自它们
  3. master.dbo.spt_values
  4. windows下Graphviz安装及入门教程
  5. Springboot 抛出Failed to determine a suitable driver class异常原因
  6. Safari 不能播放Video ,Chrome等可以 问题解决。
  7. linux as86,记linux_centOS安装as86过程
  8. 未能加载文件或程序集“Newtonsoft.Json, Version=4.5.0.0[已解决]
  9. 三角形一条边在另一条的投影长度计算
  10. 【elasticsearch 】logstash elasticsearch output plugin 的阻塞问题
  11. HTML实时预览-LiveReload完整使用方法
  12. Bugku杂项——旋转跳跃
  13. 从1到2000个微服务,史上最落地的实践云原生25个步骤
  14. ***卖火柴的lly***
  15. 预览文件乱码解决方法记录
  16. 拉格朗日四平方和定理
  17. java线程状态研究
  18. Java高性能系列-(一)VM生命周期
  19. 前端HTML网页文档模板介绍以及常用标签
  20. OpenAI在Dota 2游戏中虽败犹荣

热门文章

  1. nuget下载太慢的问题解决方案 多次尝试下载该 nupkg 均已失败解决方案
  2. Xamarin.Forms入门学习路线
  3. 增长量计算n+1原则_行测资料分析技巧:一招解决增长量
  4. 电商扣减库存_电商后台系统产品逻辑全解析
  5. matlab计算机械臂素的,机械臂动力学——动力学建模
  6. excel python插件 微软_听说微软已经添加 Python 为官方的 Excel 脚本语言了?
  7. 怎样修改美国的服务器节点,美国云服务器节点怎么
  8. Ubuntu 自动关机命令
  9. mysql5.7下载中文版_mysql5.7正式版下载
  10. nohup启动jar_nohup命令详解