Restart-Service

1 つ以上のサービスを再起動します。

構文

Restart-Service [-Name] <string[]> [-Exclude <string[]>] [-Force] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]

Restart-Service -DisplayName <string[]> [-Exclude <string[]>] [-Force] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]

Restart-Service [-InputObject <ServiceController[]>] [-Exclude <string[]>] [-Force] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]

説明

Restart-Service コマンドレットは、指定されたサービスについて Windows サービス コントローラーに停止メッセージを送信し、その後開始メッセージを送信します。サービスが既に停止している場合は、エラーを通知せずに起動されます。サービスを指定するには、サービス名または表示名を入力するか、InputObject パラメーターを使用して、再起動する各サービスを表すオブジェクトを渡します。

パラメーター

-DisplayName <string[]>

再起動するサービスの表示名を指定します。ワイルドカードを使用できます。

必須

true

位置

named

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-Exclude <string[]>

指定されたサービスを除外します。このパラメーターの値は、Name パラメーターを修飾します。"s*" などの名前要素またはパターンを入力します。ワイルドカードを使用できます。

必須

false

位置

named

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-Force

セキュリティが低下しない限り、このコマンドの正常な実行を妨げる制限を無効にします。たとえば、Force を指定すると、それに依存するサービスがあってもサービスが停止および再起動されます。

必須

false

位置

named

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-Include <string[]>

指定したサービスだけを再起動します。このパラメーターの値は、Name パラメーターを修飾します。"s*" などの名前要素またはパターンを入力します。ワイルドカードを使用できます。

必須

false

位置

named

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-InputObject <ServiceController[]>

再起動するサービスを表す ServiceController オブジェクトを指定します。オブジェクトが格納されている変数を入力するか、オブジェクトを取得するコマンドまたは式を入力します。

必須

false

位置

named

既定値

パイプライン入力を許可する

true (ByValue)

ワイルドカード文字を許可する

false

-Name <string[]>

再起動するサービスのサービス名を指定します。

必須

true

位置

1

既定値

パイプライン入力を許可する

true (ByValue, ByPropertyName)

ワイルドカード文字を許可する

false

-PassThru

サービスを表すオブジェクトを返します。既定では、このコマンドレットによる出力はありません。

必須

false

位置

named

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-Confirm

コマンドを実行する前に確認メッセージを表示します。

必須

false

位置

named

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-WhatIf

実際にコマンドを実行せずに、コマンドを実行すると何が起きるかを出力します。

必須

false

位置

named

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

<CommonParameters>

このコマンドレットは、次の共通パラメーターをサポートします: -Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer、および -OutVariable。詳細については、次を参照してください: about_Commonparameters.

入力と出力

入力値の型は、コマンドレットへのパイプが可能なオブジェクトの型です。戻り値の型は、コマンドレットによって返されるオブジェクトの型です。

入力

System.ServiceProcess.ServiceController、System.String

パイプを使用して、サービス名が含まれているサービス オブジェクトまたは文字列を Restart-Service に渡すことができます。

出力

なし、または System.ServiceProcess.ServiceController

PassThru パラメーターを使用すると、Restart-Service は再開されたサービスを表す System.ServiceProcess.ServiceController オブジェクトを生成します。それ以外の場合、このコマンドレットによる出力はありません。

Restart-Service では、現在のユーザーに権限がある場合のみサービスを制御できます。コマンドが正常に機能しない場合は、必要な権限が与えられていない可能性があります。

システム上のサービスのサービス名と表示名を参照するには、「get-service」と入力します。サービス名は [Name] 欄に表示され、表示名は [DisplayName] 欄に表示されます。

例 1

C:\PS>restart-service wmi

説明
-----------
このコマンドを実行すると、ローカル コンピューター上の Windows Management Instrumentation (WMI) サービスが再起動されます。





例 2

C:\PS>restart-service -displayname net* -exclude "net logon"

説明
-----------
このコマンドを実行すると、表示名が "Net" で始まる、Net Logon サービス以外のサービスが再起動されます。





例 3

C:\PS>get-service net* | where-object {$_.Status -eq "Stopped"} | restart-service

説明
-----------
このコマンドを実行すると、コンピューター上で停止しているネットワーク サービスがすべて開始されます。

サービス名が "net" で始まるサービスを表すオブジェクトを取得するため、Get-Service コマンドレットを使用しています。(省略可能な Name パラメーターは省略されています)。パイプライン演算子 (|) により、サービス オブジェクトが Where-Object コマンドレットに渡され、状態が "停止" のサービスだけが選択されます。もう 1 つのパイプライン演算子により、選択したサービスが Restart-Service に送られます。実際には、WhatIf パラメーターを使用して、コマンドを実行する前にその結果を確認できます。





関連項目

概念

Start-Service
Stop-Service
Suspend-Service
Resume-Service
New-Service
Get-Service
Set-Service