Board logo

标题: [求助]怎样判断服务器是否在线? [打印本页]

作者: www0com0my     时间: 2008-2-18 02:56    标题: [求助]怎样判断服务器是否在线?

我需要写一个批处档,能判断 区域网络LAN 上的一台电脑是否有在线,最好能用IP判断是否存在。

如果没有在线 需要restart 自己。

请应该怎么写?

-------
还有批处档里等待的语法应该怎么写,我一直很想让批处当在执行的时间等2秒才执行下一个指令的

谢谢。

[ Last edited by www0com0my on 2008-2-18 at 06:35 PM ]
作者: knoppix7     时间: 2008-2-18 09:39
ping IP
telnet IP 端口
ping 计算机名称
作者: www0com0my     时间: 2008-2-18 18:25
请问批处档应该怎么写?

我不能使用这个语法。
IF NOT EXIST “10.0.0.12” shutdown -r -t 0

“IF NOT EXIST”只能判断文件名,无法判断IP :(

请高手指教。

[ Last edited by www0com0my on 2008-2-18 at 06:35 PM ]
作者: HAT     时间: 2008-2-18 22:54
批处理中的延时
http://www.cn-dos.net/forum/viewthread.php?tid=8905#pid54227
作者: zhitingkey     时间: 2008-2-19 17:37
ping -n 1 192.168.0.3>nul ||goto 1
start \\192.168.1.3
exit
:1
shutdown -r -t 0



ping一次服务器,通则打开服务器`不通则执行:1下面的批处理`
作者: everest79     时间: 2008-2-19 19:00
arp -d
ping serverip -n 1
arp -a|find "serverip"&&echo 在线||不在线
作者: www0com0my     时间: 2008-2-20 20:45


  Quote:
Originally posted by zhitingkey at 2008-2-19 05:37 PM:
ping -n 1 192.168.0.3>nul ||goto 1
start \\192.168.1.3
exit
:1
shutdown -r -t 0



ping一次服务器,通则打开服务器`不通则执行:1下面的批处理`

请问 ping -n 1 192.168.0.3>nul ||goto 1
那个 || 有什么通途?
||可以用在其它指令上吗?

谢谢:D
作者: www0com0my     时间: 2008-2-20 20:47


  Quote:
Originally posted by everest79 at 2008-2-19 07:00 PM:
arp -d
ping serverip -n 1
arp -a|find "serverip"&&echo 在线||不在线

不知道为什么用不到这个批处档。:(
作者: www0com0my     时间: 2008-2-20 20:59
请问为什么我这个批处档等待5秒之后会直接退出,而没有执行下面的指令:(
cls
cls
cls
@echo off
title .
:: 开机预留更新通道 ::
ping -n 1 10.0.0.12>nul ||goto restart
ping -n 1 10.0.0.14>nul ||goto restart
REM ====================== REM
setlocal enableextensions
echo %time%
call :ProcDelay 500
echo %time%
goto :EOF

:ProcDelay delayMSec_
setlocal enableextensions
for /f "tokens=1-4 delims=:. " %%h in ("%time%") do set start_=%%h%%i%%j%%k
:_procwaitloop
for /f "tokens=1-4 delims=:. " %%h in ("%time%") do set now_=%%h%%i%%j%%k
set /a diff_=%now_%-%start_%
if %diff_% LSS %1 goto _procwaitloop
endlocal & goto :EOF
REM ====================== REM
:EOF
IF NOT EXIST z:\ shutdown -r -t 0
copy z:\system\body.bat .\ /y
echo.
echo.
echo.
call z:\system\onerun.bat
exit

:restart
shutdown -r -t 0
1.上面3个cls 因为之后我会在ANSI档前面加入一些unicode,所以需要保留3个空行。

2.等待5秒加载网络磁盘。

3.copy z:\system\body.bat .\ /y 拷贝网络磁盘上同文件名的批处档“覆盖/更新“自己,因为以后这只批处档可能会更动内容。

4.3个echo. 怕覆盖了自己后miss 掉指令,所以放3个空的指令。

5.call 在网盘上面的批处档。


请问这样的思路有错误的地方吗?

[ Last edited by www0com0my on 2008-2-20 at 09:09 PM ]
作者: www0com0my     时间: 2008-2-21 16:55
掉到第2页了,推上来。:)