#!/bin/bashfor i in {网段}doif ping -c (ping的次数) -w (检测时间) 192.168.179.$i &>/dev/null(放到黑洞文件)thenecho "192.168.179.$i is up"(成功显示)elseecho "192.168.179.$i is down"(不成功显示)fidone
参数:
-c count:指定ping检测次数;-w deadline:设定检测时间为<deadline>秒,不管能否通,达到限制时间就结束ping过程;-I interface:指定网络接口或者本机地址发出数据包;-t ttl :设置TTL(Time To Live)为指定的值,该字段指定IP包被路由器丢弃之前允许通过的最大网段数;-s packetsize:指定每次ping发送的数据字节数,默认为“56字节”+“28字节”的ICMP头,一共是84字节。包头+内容不能大于65535,所以最大值为65507(linux:65507, windows:65500);-W timeout:等待回复的时间,单位是毫秒。这个选项只在没有接到任何的回复的情况下有效,只要接到了一个回复,就将等待时间设置为两倍的RTT。如果没有设置,则等待时间设置为一个最大值;-q:静默模式,这种模式下,除了开始的提示和结束的数据统计,不输出任何信息。