中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-08 11:20
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [已解决]如何在CMD下查看服务是否启动 查看 2,029 回复 11
楼 主 [已解决]如何在CMD下查看服务是否启动 发表于 2008-05-04 09:37 ·  中国 四川 遂宁 电信
初级用户
★★
积分 121
发帖 54
注册 2008-01-10 19:13
18年会员
UID 108238
性别 男
状态 离线
刚刚看到一位朋友问相似的问题,不过我的问题更简单,如题,如何用CMD命令查看指定服务(比如schedule)是启动还是停止状态?服务没有进程可寻,不能tasklist,也没有端口开放,不能netstat -an。

请知道的朋友提供路子,先谢!

[ Last edited by clong on 2008-5-4 at 06:49 PM ]
2 发表于 2008-05-04 09:43 ·  中国 陕西 西安 电信
铂金会员
★★★★
积分 5,212
发帖 2,478
注册 2007-02-08 23:39
19年会员
UID 79003
性别 男
状态 离线
sc
3 发表于 2008-05-04 09:54 ·  中国 四川 遂宁 电信
初级用户
★★
积分 121
发帖 54
注册 2008-01-10 19:13
18年会员
UID 108238
性别 男
状态 离线
能具体点吗?SC哪个参数?如何使用?

谢谢!
4 发表于 2008-05-04 09:55 ·  中国 陕西 西安 电信
铂金会员
★★★★
积分 5,212
发帖 2,478
注册 2007-02-08 23:39
19年会员
UID 79003
性别 男
状态 离线
你输入sc就有帮助信息……记得按下y看例子
5 发表于 2008-05-04 10:01 ·  中国 四川 遂宁 电信
初级用户
★★
积分 121
发帖 54
注册 2008-01-10 19:13
18年会员
UID 108238
性别 男
状态 离线
谢谢!自己解决了!
@echo off
for /f "skip=3 tokens=4" %%i in ('sc query schedule') do echo %%i&goto next
:next

就可以查看schedule服务的运行的状态了。
6 发表于 2008-05-04 10:01 ·  中国 四川 遂宁 电信
初级用户
★★
积分 121
发帖 54
注册 2008-01-10 19:13
18年会员
UID 108238
性别 男
状态 离线
以前一直用sc来设置服务为 auto,呵呵,只注意到config,没注意到query的用法。
再次谢谢楼上的朋友!
7 发表于 2008-05-04 11:55 ·  中国 山西 运城 联通
银牌会员
★★★
天的白色影子
积分 2,343
发帖 636
注册 2004-03-06 00:00
22年会员
UID 19350
性别 男
状态 离线
net start 也是可以的
8 发表于 2008-05-04 16:39 ·  中国 广东 汕头 潮阳区 电信
高级用户
★★★
DOS时空
积分 713
发帖 348
注册 2007-02-10 13:59
19年会员
UID 79169
性别 男
状态 离线
不错收藏了!!!!!!!!!!!!!!!!!
9 发表于 2008-05-04 16:42 ·  中国 山东 淄博 联通
银牌会员
★★★
积分 1,604
发帖 646
注册 2008-04-13 23:39
18年会员
UID 115804
性别 男
状态 离线
sc qc <servicename>
sc query <servicename>
貌似sc在2k中没有的
10 发表于 2008-05-04 17:43 ·  中国 北京 西城区 联通
银牌会员
★★★
积分 1,287
发帖 634
注册 2007-05-02 15:06
19年会员
UID 87277
性别 男
来自 cmd.exe
状态 离线
那就用net start 把..
11 发表于 2008-05-04 18:45 ·  中国 四川 遂宁 电信
初级用户
★★
积分 121
发帖 54
注册 2008-01-10 19:13
18年会员
UID 108238
性别 男
状态 离线
对的,用net start可以这样:
for /f "tokens=*" %%i in ('net start ^|find /i "scheduler"') do set schsvc=%%i

如果%schsvc%不为空,则schedule服务已启动,反之则未启动。
net start显示所有已启动的服务,显示为服务显示名称,不是服务名。

9楼的朋友如果需要,可以利用吧!

[ Last edited by clong on 2008-5-4 at 06:48 PM ]
12 发表于 2008-05-04 22:24 ·  中国 山东 淄博 联通
银牌会员
★★★
积分 1,604
发帖 646
注册 2008-04-13 23:39
18年会员
UID 115804
性别 男
状态 离线
Originally posted by clong at 2008-5-4 06:45 PM:
对的,用net start可以这样:
for /f "tokens=*" %%i in ('net start ^|find /i "scheduler"') do set schsvc=%%i

如果%schsvc%不为空,则schedule服务已 ...

嗯。。。
谢谢指点!~ 关于控制服务,我还是觉得sc比net强一点,因为对于禁用的服务,貌似net可能无能为力了啊,不知把sc拷贝到2k中能不能用~
得发掘各个工具的长处,net的确强大,很多局域网通信都用得到它,用最适用的工具,做最适用的事情~
论坛跳转: