Windowsサービス一覧をコマンドで取得する

サービスの状態を確認したい時や、OS構成のパラメータシートを書く時など、Windowsサービス情報の一覧をコマンドで取得できると何かと便利なことがあります。今回はそんな時の手順を。サービス一覧の取得はscコマンドを使います。取得したいサービスの状態が開始(RUNNING)か停止(STOPPED)かによって若干オプションが違ってくるものの、いずれも非常に簡単。

  • 全サービスの一覧を取得
    • 「state= all」がないと、稼動中のサービスのみの一覧となる。

sc query state= all

  • 停止中のサービス一覧の取得

sc query state= inactive

  • 実際の使用例・・・あるVMWare関連サービスをコマンドで手動起動する場合
    • (1)正確なサービス名が思い出せないので確認


C:\>sc query state= all | findstr ^SERVICE_NAME | findstr VM
SERVICE_NAME: VMAuthdService
SERVICE_NAME: VMnetDHCP
SERVICE_NAME: VMware NAT Service
SERVICE_NAME: VMwareHostd
SERVICE_NAME: VMwareServerWebAccess

    • (2)サービスの状態を確認


C:\>sc query VMwareHostd
SERVICE_NAME: VMwareHostd
TYPE : 10 WIN32_OWN_PROCESS
STATE : 1 STOPPED
(NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0

    • (3)サービスを起動


C:\>net start VMwareHostd
VMware Host Agent サービスは正常に開始されました。