ping检测整个网络的主机是否有响应

         这是第一个对于我还是比较长的shell脚本程序,我先简单的说一下ping。后面是-c的意思ping的次数,-n在输出数据时不进行IP与主机名的反查,直接使用IP输出速度快,-W 等待响应对方主机的秒数。

         ping检测整个网络的主机是否有响应,此外每台主机检测仅仅等待1s,也仅仅检测一次

#! /bin/bash
for siteip in $(seq 1 254)
do
    site="172.20.0.${siteip}"
    ping -c1 -W1  ${site} &> /dev/null
    if [ "$?" == "0" ]; then
        echo "$site is up" > pingfile
    else
        echo "$site is down"
    fi  
done

  &> /dev/null 是吧多余的东西扔到回收站去。

  pingfile是保存可以ping的通的主机ip

ping检测整个网络的主机是否有响应_第1张图片

如果没有&> /dev/null,那么输出多余的东西如上图



ping检测整个网络的主机是否有响应_第2张图片

输出的结果


pingfie文件中保存了可以ping通的

你可能感兴趣的:(linux日积月累,shell脚本学习笔记)