中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-10 13:03
47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,255 会员排行
DOS批处理 & 脚本技术(批处理室) » [请教]如何查看服务器是否启动?
可打印版本  4,177 / 19
第1楼 sunyao 发表于 2006-10-30 22:33
初级用户 发帖 60 积分 141 来自 天津
[请教]如何查看服务器是否启动?
我想在服务器查看它是否正常启动
sc query MyServer
if errorlevel 1 (
echo #### Weblogic起動処理(%_PROG_%) 異常終了 #### >> %LOGFILE% goto ERROREND
)Sample Text
第2楼 youxi01 发表于 2006-10-31 01:43
高级用户 发帖 247 积分 846 来自 湖南==》广东
“已知条件”太少了!
第3楼 不得不爱 发表于 2006-10-31 02:45
超级版主 发帖 2,044 积分 5,310 来自 四川南充
你是想看服务是否正常启动还是服务器是否正常启动?
第4楼 sunyao 发表于 2006-10-31 04:00
初级用户 发帖 60 积分 141 来自 天津
没错,就想看是不是正常启动。
我现在不清楚sc query MyServer能不能准确的知道Weblogic服务器是否正常启动,
用if errorlevel 判断sc query MyServer的返回值。
现在是已经正常启动了还报“Weblogic起動処理異常終了“,证明sc query MyServer有问题,是不是还有别的dos命令能看服务器是否正常启动呀?
第5楼 vkill 发表于 2006-10-31 04:33
金牌会员 发帖 1,744 积分 4,103 来自 甘肃.临泽
for ...... sc query myserver|find /i "state"
第6楼 sunyao 发表于 2006-10-31 05:10
初级用户 发帖 60 积分 141 来自 天津
好像不行sc query myserver|find /i "state"能解释一下吗
谢谢!!
第7楼 不得不爱 发表于 2006-10-31 05:16
超级版主 发帖 2,044 积分 5,310 来自 四川南充
那你执行sc query myserver看输出是什么
第8楼 sunyao 发表于 2006-10-31 05:29
初级用户 发帖 60 积分 141 来自 天津
我查了一下sc query命令后面应该是一个服务名
我现在要检查的是服务器的状态我的myserver是服务器名
不是服务名 看看能解决吗
第9楼 vkill 发表于 2006-10-31 05:48
金牌会员 发帖 1,744 积分 4,103 来自 甘肃.临泽
我现在要检查的是服务器的状态???

汗~~这个关sc 什么事情,ping 就是了
第10楼 sunyao 发表于 2006-10-31 06:18
初级用户 发帖 60 积分 141 来自 天津
我的weblogic装载本机 http://localhost:7001
好像不能ping端口吧
第11楼 redtek 发表于 2006-10-31 06:40
金牌会员 发帖 1,147 积分 2,902
BEA WebLogic服务器启动以后(你点击运行的已配置好的启动脚本),
不是出现一个(黑色的)Cmd Shell的窗口吗?
这个服务器正在运行的状态CMD SHELL窗口只有你强行关闭或服务器配置不正确等原因才会自动关闭。

也可以 TASKLIST命令来寻找那个正在运行状态的CMD窗口,
这个CMD的窗口的名字应该是 Start Server - 后面是你的BEA所在目录……
(你可以开启后把那个Cmd窗口标题抄下来做为检索之用。

TASKLIST.EXE 的使用详见: TASKLIST.EXE /?

) 第二种:(手工操作)

Telnet LocalHost 7001

服务器运行时开启了7001端口进行监听状态,
Telnet进入后会看到黑屏幕(即Telnet连接成功了,进入了,但没有什么显示信息),
说明这个服务器在开启服务状态。

) 第三种:

VBSCRIPT编一个脚本,判断7001端口是否为开启状态。
或类似原理。
第12楼 sunyao 发表于 2006-10-31 06:49
初级用户 发帖 60 积分 141 来自 天津
现谢谢redtek,我试试
第13楼 redtek 发表于 2006-10-31 06:51
金牌会员 发帖 1,147 积分 2,902
在命令行上键入如下执令可以查看Weblogic的7001端口是否开启:)
写在批处理里也一样~:)

netstat -na | findstr ":7001 ">nul && echo 服务器正常 || echo 服务器关闭



注: 在 findstr ...中检索字符串":7001 "它的后面是有一个空格的:)
   以防万一有一个700的端口而影响判断准备性:)

[ Last edited by redtek on 2006-10-31 at 09:08 AM ]
第14楼 sunyao 发表于 2006-10-31 21:43
初级用户 发帖 60 积分 141 来自 天津
现在基本解决了 感谢大家
Telnet LocalHost 7001好像不行
它与netstat -na | findstr ":7001 ">nul 有什么区别吗
第15楼 redtek 发表于 2006-10-31 22:59
金牌会员 发帖 1,147 积分 2,902
Telnet本来是远程登录用的一个工具,
但它可以连接无论是远程还是本地的一台主机的任何一个由你指定的端口(TCP/IP),
只要是这个端口处在服务监听的过程中,
用它就可以登录(不是成功登录,是可以看到登录连接的状态)。

开发服务器软件或做调试的时候,有时候不知道服务器(如80端口或自己的监听程序是否正常工作——监听某个端口),
那么最省事的办法就是用Telnet登录一下看看就知道了。

(只不过Telnet不太适合自动化的脚本工作上测试,临时手工测试某个端口是否开启了很方便)

(如果经常开发如数据库方面的东东,但有时候程序就是不能连接到数据库服务器)
(这时候就可以使用Telnet来登录SQL服务器的端口看看状态,也就几秒钟的时间就可以简判定一般情况下是服务器还是代码的问题等)


netstat -na | findstr ":7001 ">nul (如果你不加>nul定向,那么乱八七Zao的检索信息全出来了:)

[ Last edited by redtek on 2006-10-31 at 11:05 PM ]
1 2  下一页
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023