如何确定特定服务的状态?

时间:2011-08-30 18:35:13

标签: windows-services

我想运行一个命令,它将为我提供特定Windows服务的状态。使用sc查询,我能够获得这些信息,见下文。

C:\ Windows \ System32> sc查询“IBM Cognos”

SERVICE_NAME:IBM Cognos

    TYPE               : 10  WIN32_OWN_PROCESS
    STATE              : 1  STOPPED
    WIN32_EXIT_CODE    : 1077  (0x435)
    SERVICE_EXIT_CODE  : 0  (0x0)
    CHECKPOINT         : 0x0
    WAIT_HINT          : 0x0

我真正需要访问的唯一信息是“STATE”。我可以过滤输出,所以我只看到STATE或“1 STOPPED”吗?我希望我能做一些像:

sc query [STATE]“IBM Cognos”

我的最终目标是运行一个.bat文件,该文件将服务的状态输出到文件。然后,我可以从另一个程序中读取该文件,并使用该值来确定是否应在UI中显示指示“已启动”的绿色图标或指示“已停止”的红色图标。

先谢谢你的帮助,

杰夫

1 个答案:

答案 0 :(得分:1)

怎么样:

sc query "IBM Cognos" | find "STATE"

应该返回类似的内容:

    STATE              : 1  STOPPED