Board logo

标题: 求助 怎么用批处理判断路由上的主机状态。 [打印本页]

作者: supiti     时间: 2010-10-27 01:18    标题: 求助 怎么用批处理判断路由上的主机状态。

在路由状态下,路由ip192.168.1.1
已经绑定ip 主机有ABCD,分别对应  192.168.1.2   192.168.1.3  192.168.1.4  192.168.1.5

怎么让批处理自动判断主机在线状态,并列表显示。

如:

主机A 在线
主机B 不在线
主机C 在线
主机D 不在线

谢谢。
作者: doslike     时间: 2011-1-2 18:37
比如说ping一下主机a,假如errorlevel=2,那就是不在线。
@echo off
color 2e
::判断设置文件是否存在,如果不存在,跳转到设置界面
::if not exist setting.cmd goto set
::开始判断
:1
title 正在判断主机是否上线。。。
call setting.cmd
pause
:set
title ip设置
echo 由于您是第一次使用软件,那么现在开始设置ip。
set /p a=主机 A 的ip
echo ping %a%^>nul>setting.cmd
echo if "%errorlevel%"=="1" echo 主机A不在线 ELSE ECHO 主机A在线>setting.cmd
set /p b=主机 B 的ip
echo ping %b%^>nul>setting.cmd
echo if "%errorlevel%"=="1" echo 主机B不在线 ELSE ECHO 主机B在线>setting.cmd
set /p c=主机 C 的ip
echo ping %c%^>nul>setting.cmd
echo if "%errorlevel%"=="1" echo 主机C不在线 ELSE ECHO 主机C在线>setting.cmd
set /p d=主机 D 的ip
echo ping %d%^>nul>setting.cmd
echo if "%errorlevel%"=="1" echo 主机D不在线 ELSE ECHO 主机D在线>setting.cmd
ECHO ECHO OK,检测已完成。>setting.cmd
echo 按任意键重新检测,关闭请直接点击窗口右上方的"X"退出。>setting.cmd
echo pause^>nul>setting.cmd
echo goto 1>setting.cmd
ECHO 设置完毕!按任意键开始检测。
PAUSE
GOTO 1
本代码未经测试!
如果有问题的话告诉我