web-dev-qa-db-ja.com

ワイルドカードサービスの再起動

現在、それらを開始/停止するすべてのサービスをリストする.BATファイルをセットアップしています。

SC start SERVICE
SC start SERVICE

SC stop SERVICE
SC stop SERVICE

常に新しいサービスを追加していると、リストが大きくなり、バッチファイルを維持することが困難になります。

'SC start SERVICE *'などのワイルドカードを使用できますか?

21
Edward Tung

wmicおよびSQL風のワイルドカード構文を使用できます。

cmdコンソールから:

wmic service where "name like 'SERVICE%'" call startservice

から .bat 脚本:

wmic service where "name like 'SERVICE%%'" call startservice

使用可能な動詞には、startservicestopservicepauseserviceresumeserviceなどがあります。行う wmic service call /?詳細については。

17
rojo

簡単、Powershell経由:

Get-service SERVICE* | stop-service -force

Get-service SERVICE* | start-service
13
Gotxi

1行のコマンドが必要な場合は、

PowerShellにあらかじめ組み込まれている Restart-Service Cmdlet を使用できます。

Restart-Serviceを使用するには、コマンドレットに続けてサービス名を呼び出します。

Restart-Service mysql57

複数のサービスを再起動するには、各サービスの名前をカンマで区切って指定します。

Restart-Service mysql57,Apache

必要に応じて、-displaynameパラメーターを追加し、代わりにサービスの表示名(サービススナップインに表示される名前)を指定します。

Restart-Service -displayname "Mysql 5.7 server"

このコマンドレットは、ワイルドカードマッチングも受け入れます。 「mysql」で始まるすべてのサービスを再起動するには:

Restart-Service mysql*
0
Raja Anbazhagan