美文网首页
关于ping的shell脚本

关于ping的shell脚本

作者: 哆啦A梦_ca52 | 来源:发表于2021-03-25 14:09 被阅读0次
    一、ping主机存活率,read从键盘读入
    
    #!/usr/bin/env bash
    
    stty erase ^H   #read  -p的时候如果写错可以随意删除
    
    read -p "输入ip前三位网络位:" ip   #从键盘输入值,这个值最好不要带小数点
    
    for i in {1..254}
    do
        ping -c1 ${ip}.$i &>/dev/null
        if [[ $? -ne 0 ]];then
            echo "${ip}.$i不通畅"
            #${ip}.$i >> ip.txt     #追加到一个文本内,记得每回清空,可选项
        else
            echo "${ip}.$i通畅"
        fi
    done
    
    
    二、ping主机存活率,位置变量(参数赋值)
    
    #!/usr/bin/env bash
    
    stty erase ^H
    
    for i in {1..254}
    do
        ping -c1 ${1}.$i &>/dev/null
        if [[ $? -ne 0 ]];then
            echo "${1}.$i不通畅"
            #${ip}.$i >> ip.txt     #追加到一个文本内,记得每回清空,可选项
        else
            echo "${1}.$i通畅"
        fi
    done
    
    
    三、通过位置变量来看一下与它之间的连通性
    
    #!/usr/bin/env bash
    
    ping -c1 $1 &>/dev/null
    if [ $? -eq 0 ];then
        echo "与${1}之间通信正常"
    else
        echo "与${1}之间通信不正常"
    fi
    
    四、for循环 ,ping测试指定网段的主机
    网段由位置变量生成,例如用户输入192.168.2 ,则ping 192.168.2.120 — 192.168.2.130,ip范围可以修改
    UP: /tmp/host_up.txt
    Down: /tmp/host_down.txt
    
    #!/usr/bin/env bash
    
    >/tmp/host_up.txt
    >/tmp/host_down.txt
    for i in {120..130}
    do
        ping -c1 $1.$i &>/dev/null
        if [[ $? -eq 0 ]];then
            echo "${1}.${i}通畅" >>/tmp/host_up.txt
        else
            echo "${1}.${i}不通畅" >>/tmp/host_down.txt
        fi
    done
    ~       
    
    
    公司专用shell脚本
    
    >/tmp/host_up.txt
    >/tmp/host_down.txt
    
    for i in `cat /tmp/ip.txt`;
    
    do
        ping -c1 $1$i &>/dev/null
        if [[ $? -eq 0 ]];then
            echo "${1}${i}通畅" >>/tmp/host_up.txt
        else
            echo "${1}${i}不通畅" >>/tmp/host_down.txt
        fi
    done
    
    
    
    

    相关文章

      网友评论

          本文标题:关于ping的shell脚本

          本文链接:https://www.haomeiwen.com/subject/dqolhltx.html