2021年11月28日(日) [長年日記]
■ [windows] コマンドラインでサービスの情報を確認する
Windowsのコマンドラインでサービスの情報を得る方法として
- sc.exe
- Get-Service (PowerShellのコマンドレット)
の2つがあることを知った。
sc.exeの方について少しメモ。sc.exeのちゃんとしたマニュアルは見つからなくて、上記のリンク先はWindows Server 2012のドキュメント。
sc.exeでサービスの情報を得られそうなサブコマンドとしてquery, queryex, qcがある。それぞれの実行結果を次に示す。
> sc query com.docker.service SERVICE_NAME: com.docker.service TYPE : 10 WIN32_OWN_PROCESS STATE : 4 RUNNING (STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN) WIN32_EXIT_CODE : 0 (0x0) SERVICE_EXIT_CODE : 0 (0x0) CHECKPOINT : 0x0 WAIT_HINT : 0x0
> sc queryex com.docker.service SERVICE_NAME: com.docker.service TYPE : 10 WIN32_OWN_PROCESS STATE : 4 RUNNING (STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN) WIN32_EXIT_CODE : 0 (0x0) SERVICE_EXIT_CODE : 0 (0x0) CHECKPOINT : 0x0 WAIT_HINT : 0x0 PID : 5028 FLAGS :
> sc qc com.docker.service [SC] QueryServiceConfig SUCCESS SERVICE_NAME: com.docker.service TYPE : 10 WIN32_OWN_PROCESS START_TYPE : 2 AUTO_START ERROR_CONTROL : 1 NORMAL BINARY_PATH_NAME : "C:\Program Files\Docker\Docker\com.docker.service" LOAD_ORDER_GROUP : TAG : 0 DISPLAY_NAME : Docker Desktop Service DEPENDENCIES : LanmanServer SERVICE_START_NAME : LocalSystem
- queryexはqueryで得られる情報にPIDとFLAGSが加わった結果になっている。
- 現在の状態(STATE)はqueryで得られる。
- 起動設定(START_TYPE)はqcで得られる。