Restart-Computer
ローカル コンピューターおよびリモート コンピューター上でオペレーティング システムを再起動 (リブート) します。
構文
Restart-Computer [[-ComputerName] <string[]>] [[-Credential] <PSCredential>] [-AsJob] [-Authentication {<Default> | <None> | <Connect> | <Call> | <Packet> | <PacketIntegrity> | <PacketPrivacy> | <Unchanged>}] [-Force] [-Impersonation {<Default> | <Anonymous> | <Identify> | <Impersonate> | <Delegate>}] [-ThrottleLimit <int>] [-Confirm] [-WhatIf] [<CommonParameters>]
説明
Restart-Computer コマンドレットは、ローカル コンピューターおよびリモート コンピューター上でオペレーティング システムを再起動します。
Restart-Computer のパラメーターを使用して、バックグラウンド ジョブとしての再起動操作、認証レベルと代替資格情報の指定、同時に実行される操作の数の制限、および即時再起動の強制を実行することができます。
AsJob パラメーターを使用しない限り、このコマンドは Windows PowerShell をリモートで実行する必要はありません。
パラメーター
-AsJob
バックグラウンド ジョブとしてコマンドを実行します。
注: このパラメーターを使用するには、ローカル コンピューターおよびリモート コンピューターをリモート処理用に構成する必要があります。また、Windows Vista 以降のバージョンの Windows の場合は、Windows PowerShell を開く際に [管理者として実行] を指定する必要があります。詳細については、「about_Remote_Requirements」を参照してください。
AsJob パラメーターを使用すると、バックグラウンド ジョブを表すオブジェクトが即座に返されます。ジョブが完了しても、引き続きセッションで作業できます。ジョブは、ローカル コンピューターで作成され、リモート コンピューターでの結果は自動的にローカル コンピューターに返されます。ジョブを管理するには、Job コマンドレットを使用します。ジョブの結果を取得するには、Receive-Job コマンドレットを使用します。
Windows PowerShell のバックグラウンド ジョブの詳細については、「about_Jobs」および「about_Remote_Jobs」を参照してください。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-Authentication <AuthenticationLevel>
WMI 接続に使用する認証レベルを指定します。Restart-Computer は WMI を使用します。既定値は Packet です。
有効な値は次のとおりです。
Unchanged: 認証レベルは前のコマンドと同じです。
Default: Windows 認証
None: COM 認証なし
Connect: 接続レベルの COM 認証
Call: 呼び出しレベルの COM 認証
Packet: パケット レベルの COM 認証。
PacketIntegrity: パケット整合性レベルの COM 認証
PacketPrivacy: パケット プライバシー レベルの COM 認証。
必須 |
false |
位置 |
named |
既定値 |
4 |
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-ComputerName <string[]>
1 台以上のリモート コンピューターを指定します。既定値はローカル コンピューターです。
リモート コンピューターの NETBIOS 名、IP アドレス、または完全修飾ドメイン名を入力します。ローカル コンピューターを指定するには、コンピューター名、ドット (.)、または「localhost」を入力します。
このパラメーターは、Windows PowerShell リモート処理に依存しません。コンピューターがリモート コマンドを実行するように構成されていない場合でも、ComputerName パラメーターを使用できます。
必須 |
false |
位置 |
1 |
既定値 |
. |
パイプライン入力を許可する |
true (ByPropertyName) |
ワイルドカード文字を許可する |
false |
-Credential <PSCredential>
この処理を実行するアクセス許可を持つユーザー アカウントを指定します。既定値は現在のユーザーです。
"User01" や "Domain01\User01" のようなユーザー名を入力するか、PSCredential オブジェクト (Get-Credential コマンドレットから返されるものなど) を入力します。
必須 |
false |
位置 |
2 |
既定値 |
Current user |
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-Force
コンピューターの即時再起動を強制します。
必須 |
false |
位置 |
named |
既定値 |
False |
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-Impersonation <ImpersonationLevel>
WMI を呼び出すときに使用する偽装レベルを指定します。(Restart-Computer は WMI を使用します)。既定値は "Impersonate" です。
有効な値は次のとおりです。
Default: 既定の偽装。
Anonymous: 呼び出し元の ID は非表示になります。
Identify: オブジェクトによる呼び出し元の資格情報のクエリが許可されます。
Impersonate: オブジェクトによる呼び出し元の資格情報の使用が許可されます。
必須 |
false |
位置 |
named |
既定値 |
Impersonate |
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-ThrottleLimit <int>
このコマンドを実行するために確立できる最大同時接続数を指定します。このパラメーターを省略した場合、または値 0 を入力した場合は、既定値の 32 が使用されます。
スロットル制限は現在のコマンドのみに適用され、セッションまたはコンピューターには適用されません。
必須 |
false |
位置 |
named |
既定値 |
32 |
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-Confirm
コマンドを実行する前に確認メッセージを表示します。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-WhatIf
実際にコマンドを実行せずに、コマンドを実行すると何が起きるかを出力します。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
<CommonParameters>
このコマンドレットは、次の共通パラメーターをサポートします: -Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer、および -OutVariable。詳細については、次を参照してください: about_Commonparameters.
入力と出力
入力値の型は、コマンドレットへのパイプが可能なオブジェクトの型です。戻り値の型は、コマンドレットによって返されるオブジェクトの型です。
入力 |
なし パイプを使用してこのコマンドレットに入力を渡すことはできません。 |
出力 |
なし、または System.Management.Automation.RemotingJob AsJob パラメーターを使用すると、コマンドレットはジョブ オブジェクトを返します。それ以外の場合、出力は生成されません。 |
注
このコマンドレットは、WMI WIN32_OperatingSystem クラスの Win32Shutdown メソッドを使用します。
例 1
C:\PS>restart-computer
説明
-----------
このコマンドは、ローカル コンピューターを再起動します。
例 2
C:\PS>restart-computer -computername Server01, Server02, localhost
説明
-----------
2 台のリモート コンピューター Server01 と Server02、および localhost として識別されるローカル コンピューターを再起動します。
例 3
C:\PS>$j = restart-computer -computername Server01, Server02 -asjob
C:\PS> $results = $j | receive-job
C:\PS> $results
説明
-----------
これらのコマンドは、バックグラウンド ジョブとして 2 台のリモート コンピューター上で Restart-Computer コマンドを実行して、結果を取得します。
最初のコマンドは AsJob パラメーターを使用して、バックグラウンド ジョブとしてコマンドを実行します。このコマンドは、結果のジョブ オブジェクトを $j 変数に保存します。
2 番目のコマンドはパイプライン演算子を使用して、$j 内のジョブ オブジェクトを Receive-Job コマンドレットに渡します。このコマンドレットは、ジョブの結果を取得します。結果は $results 変数に保存されます。
3 番目のコマンドは $results 変数に保存された結果を表示します。
AsJob パラメーターが、ローカル コンピューター上にジョブを作成して、結果をローカル コンピューターに自動的に返すので、Receive-Job コマンドをローカル コマンドとして実行できます。
例 4
C:\PS>restart-computer -comp Server01 -impersonation anonymous -authentication PacketIntegrity
説明
-----------
このコマンドは、Server01 リモート コンピューターを再起動します。カスタマイズされた偽装および認証の設定が使用されます。
例 5
C:\PS>$s = get-content domain01.txt
C:\PS> $c = get-credential domain01\admin01
C:\PS> restart-computer -computername $s -force -throttlelimit 10 -credential $c
説明
-----------
これらのコマンドは、Domain01 にあるコンピューターすべての即時再起動を強制します。
最初のコマンドは、ドメイン内のコンピューターの一覧を取得して、$s 変数に保存します。
2 番目のコマンドは、ドメイン管理者の資格情報を取得して、$c 変数に保存します。
3 番目のコマンドは、コンピューターを再起動します。ComputerName パラメーターを使用して $s 変数にあるコンピューターの一覧を送信し、Force パラメーターを使用して即時再起動を強制し、Credential パラメーターを使用して $c 変数に保存された資格情報を送信します。また、ThrottleLimit パラメーターでコマンドの同時接続数を 10 に制限します。
関連項目
概念
Add-Computer
Checkpoint-Computer
Remove-Computer
Restore-Computer
Stop-Computer
Test-Connection