サービスの名前を知っているだけで、バッチスクリプトのコマンドを使用してWindowsサービスのPIDを取得する方法はありますか?
次のコードを試してください。
FOR/F "tokens = 3" %% A IN( 'sc queryex%serviceName%^ | findstr PID')DO(SET pid = %% A) IF "!pid!" NEQ "0"( taskkill/F/PID!pid! )
taskkill /f /fi "SERVICES eq <service_short_name>"
を実行する方がはるかに簡単です
@echo off
for /f "tokens= delims=" %%# in ('
wmic service where "name='Service'" get ProcessId /format:value
') do (
for /f "tokens=* delims=" %%$ in ("%%#") do set "%%$"
)
taskkill /pid %ProcessId% /f