ablog

不器用で落着きのない技術者のメモ

Windows Server 2003 でリモートホストのサービス起動状態を確認する

Windows Management Instrumentation (WMI) っていうのが使えそう。
他のPCからのサービス操作 -あるPCから、別のPCのサービスをバッチで操- UNIX・Linux | 教えて!goo
WMIを使うスクリプトを簡単に作成する − @IT
WMI Fun !! 〜 WMI (Windows Management Instrumentation) に興味がある方・システム管理者は必見です! 〜


追記:
SC コマンドのほうがもっと使えそう。
SCコマンド -- あらゆる目的に使えるサービス管理コマンド第1回 SCをNetコマンドの代わりに使用する | 日経 xTECH(クロステック)
fpcu.jp - このウェブサイトは販売用です! -  リソースおよび情報
Sc query | Microsoft Docs

  • 書式
> sc [\\<サーバー名>] query <サービス名>
> sc \\server1 query eventlog
SERVICE_NAME: Eventlog
        TYPE               : 20  WIN32_SHARE_PROCESS
        STATE              : 4  RUNNING
                                (NOT_STOPPABLE,NOT_PAUSABLE,ACCEPTS_SHUTDOWN)
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0

うん、

> sc \\server1 query eventlog | findstr RUNNING

として、%errorlevel% で判断すればいけそう。

ループとか sleep はこの辺を参考にしてっと。
碧落 - 知られざるバッチファイル
Windowsのバッチ(bat)でsleep(wait)する方法 - Windowsを使い倒せ