信息发布→ 登录 注册 退出

一个可交互的并发ping检测脚本

发布时间:2026-01-11

点击量:
复制代码 代码如下:
#!/bin/bash
#********************************#
#2013-01-11 17:00:00 wanggy exp  #
#note:ping monitor               #
#********************************#
set -u
ping_fun()
{
    d_network=192.168.1
    echo -n "input the network(default $d_network):"
    read network
    : ${network:=$d_network}
    echo "network:$network"
    d_hostip_beg=1
    d_hostip_end=254
    echo -n "input the hostip(default $d_hostip_beg $d_hostip_end):"
    read hostip_beg hostip_end
    : ${hostip_beg:=$d_hostip_beg}
    : ${hostip_end:=$d_hostip_end}
    echo "hostip_beg:$hostip_beg"
    echo "hostip_end:$hostip_end"
            if [ $hostip_beg -gt $hostip_end ];then
                    echo "$hostip_beg greater than $hostip_end!!!"
                    exit 0
            fi
    : >pinglog
    : >pingerrlog
    ping_count=3
    for ((hostip=$hostip_beg;hostip<=$hostip_end;hostip++));do
    {
            host=$network.$hostip
            echo "开始ping检测$host"
            ping -c $ping_count $host >/dev/null
                    if [ $? = 0 ];then
                            echo "$host is up"
                            echo "$host is up" >>pinglog
                    else
                                    echo "$host is down"
                                    echo "$host is down" >>pingerrlog
                    fi
}&
   done
wait
}
main()
{
    echo "----开始执行ping程序----"
    ping_fun
}
main
exit 0
标签:# echo  # fi  # pingerrlog  # lt  # ping_count  # exp  # wanggy  # BR  # span  # bin  # bash  # d_network  # ping  # network  # input  # ping_fun  # note  # nbsp  # set  # monitor  # ping发现掉包报警的shell代码  # 一个shell写的ping函数  # 检测脚本  
在线客服
服务热线

服务热线

4008888355

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!