我有一个ip-address:192.168.0.205 我可以在脚本中ping它:
for i in 192.168.0.205 ....
do
ping -c 1 $i
done
但现在我想要脚本显示: 192.168.0.205 UP或DOWN
还有一种方法可以用%表示:例如:75%UP?
答案 0 :(得分:0)
你可能想要的是:
x=0;
a=1
b=5
for((i=$a;i<=$b;i++))
do
y=`ping -n 1 192.168.1.$i | grep unreachable | wc -l`
x=$(($x + $y))
done;
echo "$x $b $a" | awk '{printf "%.2f %% DOWN\n",($1/($2-$3+1))*100}';
x:包含DOWN IP的数量
a:第一个IP地址的最后一个八位字节
b:最后一个IP地址的最后一个八位字节
y:如果IP为UP,则包含0,否则为1
我希望有所帮助!
PS:将-n更改为-c或其他选项可以在shell中工作!