Shell多进程ping检测指定网段ip是否在线

要实现Ping一个网段的所有IP,并检测网络连接状态是否正常,很多方法都可以实现,下面简单介绍两种,一种为单进程,一种为多进程。

ping单进程检测(挨个处理

#!/bin/bash
read -p "请输入IP网络位:" ip  #从键盘输入,注意ip前面要有个空格
for i in $(seq 1 254) #seq用于生成数字1~254
       do
           {
              ping $ip.$i -c1 -s1 2>&1 1>/dev/null &&  #$ip和$i是两个传入参数代表网络位和主机位。2>&1 将标准>输出错误重定向标准输出到屏幕,/dev/null代表linux的空设备文件,也就>是将标准输出1重定向到/dev/null中,
              echo -e ping $ip.$i 是 "\033[32;49;1m通的! \033[39;49;0m" ||
              echo -e ping $ip.$i 是 "\033[31;49;1m不通的! \033[39;49;0m" #这>里显示结果,""里代表字符串颜色 
                                                       }
done
echo "扫描检测已结束。"

ping多进程检测(使用'&'+wait 实现)

#!/bin/bash
read -p "请输入IP网络位:" ip  #从键盘输入,注意ip前面要有个空
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值