中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]怎样判断服务器是否在线?
作者:
标题: [求助]怎样判断服务器是否在线? 上一主题 | 下一主题
www0com0my
初级用户





积分 31
发帖 19
注册 2008-2-5
状态 离线
『楼 主』:  [求助]怎样判断服务器是否在线?

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

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

请应该怎么写?

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

谢谢。

[ Last edited by www0com0my on 2008-2-18 at 06:35 PM ]



hihi~ 大家好,小弟初到贵处,请各位高手多多指教。。。:)
2008-2-18 02:56
查看资料  发短消息 网志   编辑帖子  回复  引用回复
knoppix7
银牌会员





积分 1287
发帖 634
注册 2007-5-2
来自 cmd.exe
状态 离线
『第 2 楼』:  

ping IP
telnet IP 端口
ping 计算机名称

2008-2-18 09:39
查看资料  发短消息 网志   编辑帖子  回复  引用回复
www0com0my
初级用户





积分 31
发帖 19
注册 2008-2-5
状态 离线
『第 3 楼』:  

请问批处档应该怎么写?

我不能使用这个语法。
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 ]



hihi~ 大家好,小弟初到贵处,请各位高手多多指教。。。:)
2008-2-18 18:25
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 4 楼』:  

批处理中的延时
http://www.cn-dos.net/forum/viewthread.php?tid=8905#pid54227

2008-2-18 22:54
查看资料  发短消息 网志   编辑帖子  回复  引用回复
zhitingkey
初级用户





积分 84
发帖 32
注册 2007-9-17
来自 湖北
状态 离线
『第 5 楼』:  

ping -n 1 192.168.0.3>nul ||goto 1
start \\192.168.1.3
exit
:1
shutdown -r -t 0



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

2008-2-19 17:37
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
everest79
金牌会员

一叶枝头,万树皆春



积分 2564
发帖 1127
注册 2006-12-25
状态 离线
『第 6 楼』:  

arp -d
ping serverip -n 1
arp -a|find "serverip"&&echo 在线||不在线

2008-2-19 19:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
www0com0my
初级用户





积分 31
发帖 19
注册 2008-2-5
状态 离线
『第 7 楼』:  



  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



hihi~ 大家好,小弟初到贵处,请各位高手多多指教。。。:)
2008-2-20 20:45
查看资料  发短消息 网志   编辑帖子  回复  引用回复
www0com0my
初级用户





积分 31
发帖 19
注册 2008-2-5
状态 离线
『第 8 楼』:  



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

不知道为什么用不到这个批处档。:(



hihi~ 大家好,小弟初到贵处,请各位高手多多指教。。。:)
2008-2-20 20:47
查看资料  发短消息 网志   编辑帖子  回复  引用回复
www0com0my
初级用户





积分 31
发帖 19
注册 2008-2-5
状态 离线
『第 9 楼』:  

请问为什么我这个批处档等待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 ]



hihi~ 大家好,小弟初到贵处,请各位高手多多指教。。。:)
2008-2-20 20:59
查看资料  发短消息 网志   编辑帖子  回复  引用回复
www0com0my
初级用户





积分 31
发帖 19
注册 2008-2-5
状态 离线
『第 10 楼』:  

掉到第2页了,推上来。:)



hihi~ 大家好,小弟初到贵处,请各位高手多多指教。。。:)
2008-2-21 16:55
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: