使用 fping 并行 ping 多个 ip

问题描述 投票:0回答:1

我有以下简单的 ping 监控脚本

#!/bin/bash
while true; do
HOST=8.8.8.8
HOST2=8.8.4.4

if [[ "$(fping -I -r 1 $HOST | awk '{print $3}' )" = "alive" ]]; then

sleep 1
echo "Internet is UP" 

else

if [[ "$(fping -r 1 $HOST2 | awk '{print $3}' )" != "alive" ]]; then

sleep 1
echo "Internet is Down" 
fi
fi
done

我想做的是能够并行 ping 并合并到我上面的脚本中,即

fping -a -A -c 1 8.8.8.8 8.8.4.4 1.1.1.1

至少有一个工作正常,那么“互联网已启动”,但如果全部失败,“互联网已关闭”

bash ping
1个回答
0
投票

试试这个:

while true; do
    if fping -r1 $HOST $HOST2 | grep -q alive; then
        sleep 1
        echo "Internet is UP" 
    else
        sleep 1
        echo "Internet is Down" 
    fi
done
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.