说明
用于检测网段是否有存活设备, 以192.168.102.0/24这个网段为例
            
            
              shell
              
              
            
          
          #!/bin/bash
# 192.168.102.0/24 网段ping扫描脚本
# 并行扫描,1秒超时,快速定位在线设备
# 定义网段前缀
NETWORK="192.168.102"
# 存储在线IP的临时文件
ONLINE_IPS="/tmp/online_ips.txt"
# 初始化临时文件(清空原有内容)
> $ONLINE_IPS
# 打印扫描信息
echo "======================================"
echo "  开始扫描 192.168.102.1-254 网段"
echo "  扫描模式:并行ping(1秒超时)"
echo "  在线设备IP会自动记录并输出"
echo "======================================"
echo
# 并行ping扫描(1-254)
for IP in {1..254}; do
  # ping参数说明:
  # -c 1:发送1个ICMP包
  # -W 1:超时1秒(快速判断)
  # -q:静默模式(只输出结果,不显示过程)
  ping -c 1 -W 1 -q "${NETWORK}.${IP}" > /dev/null 2>&1 && {
    echo "✅ 发现在线设备:${NETWORK}.${IP}"
    echo "${NETWORK}.${IP}" >> $ONLINE_IPS
  } &
done
# 等待所有后台ping进程结束
wait
# 扫描完成,输出汇总
echo
echo "======================================"
echo "  扫描完成!"
echo "--------------------------------------"
if [ -s $ONLINE_IPS ]; then
  echo "  在线设备总数:$(wc -l < $ONLINE_IPS) 个"
  echo "  在线IP列表:"
  cat $ONLINE_IPS | sort -V
else
  echo "  ❌ 未发现任何在线设备(检查网段或网络连接)"
fi
echo "======================================"
# 清理临时文件(可选,保留则注释此行)
rm -f $ONLINE_IPS
        执行效果
