about_Remote_Disconnected_Sessions

簡単な説明

PowerShell セッション (PSSession) を切断して再接続する方法について説明します。

長い説明

PowerShell 3.0 以降では、PSSession から切断し、同じコンピューターまたは別のコンピューター上の PSSession に再接続することができます。 セッション状態が維持され、PSSession 内のコマンドはセッションが切断されている間も引き続き実行されます。

切断されたセッション機能は、リモートコンピューターで PowerShell 3.0 以降のバージョンが実行されている場合にのみ使用できます。

切断されたセッション機能を使用すると、pssession で実行されているコマンドを中断することなく、PSSession が作成されたセッションを終了し、PowerShell を閉じてコンピューターをシャットダウンすることができます。 切断されたセッションは、完了までに時間がかかるコマンドを実行する場合に便利です。また、IT プロフェッショナルに必要な時間とデバイスの柔軟性を提供します。

コマンドレットを使用 Enter-PSSession して起動された対話型セッションから切断することはできません。

切断されたセッションを使用すると、コンピューターやネットワークの停止の結果として意図せず切断された pssession を管理できます。

実際の使用では、切断されたセッション機能を使用して、問題の解決を開始し、優先度の高い問題に対処してから、別の場所にある別のコンピューターでも、ソリューションで作業を再開することができます。

切断されたセッションのコマンドレット

次のコマンドレットは、切断されたセッション機能をサポートしています。

  • Connect-PSSession: 切断された PSSession に接続します。
  • Disconnect-PSSession: PSSession を切断します。
  • Get-PSSession: ローカルコンピューターまたはリモートコンピューター上の pssession を取得します。
  • Receive-PSSession: 切断されたセッションで実行されたコマンドの結果を取得します。
  • Invoke-Command: Indisconnectedsession パラメーターは PSSession を作成し、直ちに切断します。

切断されたセッション機能の動作

PowerShell 3.0 以降では、PSSessions は、そのセッションが作成されたセッションから独立しています。 PSSession が作成されたセッションが閉じられ、元のコンピューターがネットワークから切断されている場合でも、アクティブな PSSessions は接続のリモートコンピューターまたは サーバー側 で保持されます。

PowerShell 2.0 では、元のセッションまたは作成されたセッションから切断されたときに、リモートコンピューターから PSSession が削除されます。

PSSession を切断すると、PSSession はアクティブのままになり、リモートコンピューター上で保持されます。 セッションの状態が " 実行中 " から " 切断" に変わります。 切断された PSSession には、現在のセッションから、または同じコンピューター上の別のセッションから、または別のコンピューターから再接続できます。 セッションを管理するリモートコンピューターは、を実行していて、ネットワークに接続されている必要があります。

切断された PSSession 内のコマンドは、コマンドが完了するか出力バッファーがいっぱいになるまで、リモートコンピューター上でも継続して実行されます。 完全な出力バッファーによって Disconnect-PSSession コマンドが中断されないようにするには、、 New-PSSessionOption 、または New-PSTransportOption コマンドレットの OutputBufferingMode パラメーターを使用します。

切断されたセッションは、リモートコンピューターの切断状態で保持されます。 コマンドレットを使用 Remove-PSSession するか、pssession のアイドルタイムアウトが期限切れになるまで、pssession を削除するまで、再接続することができます。 、 New-PSSessionOption 、またはコマンドレットの Disconnect-PSSession IdleTimeoutSec パラメーターまたは New-PSTransportOption IdleTimeout パラメーターを使用して、PSSession のアイドルタイムアウトを調整できます。

別のユーザーが作成した pssession に接続できるのは、セッションの作成に使用された資格情報を提供できる場合、またはセッション構成の資格情報を使用 RunAs する場合のみです。

PSSessions を取得する方法

PowerShell 3.0 以降では、コマンドレットは Get-PSSession 、ローカルコンピューターとリモートコンピューター上の PSSessions を取得します。 また、現在のセッションで作成された pssession を取得することもできます。

ローカルコンピューターまたはリモートコンピューターで PSSessions を取得するには、 ComputerName パラメーターまたは connectionuri パラメーターを使用します。 パラメーターを指定しない場合、は、 Get-PSSession 終了位置に関係なく、ローカルセッションで作成された PSSession を取得します。

PSSessions を取得するときは、それらが保持されているコンピューター (つまり、リモートコンピューターまたは サーバー側 のコンピューター) でそれらを検索してください。

たとえば、Server01 コンピューターへの PSSession を作成する場合は、Server01 コンピューターからセッションを取得します。 別のコンピューターからローカルコンピューターに PSSession を作成する場合は、ローカルコンピューターからセッションを取得します。

次のコマンドシーケンスは、がどのように動作するか Get-PSSession を示しています。

最初のコマンドは、Server01 コンピューターへのセッションを作成します。 セッションは Server01 コンピューター上に存在します。

New-PSSession -ComputerName Server01
Id Name      ComputerName  State    ConfigurationName     Availability
-- ----      ------------  -----    -----------------     ------------
 2 Session2  Server01      Opened   Microsoft.PowerShell     Available

セッションを取得するには、の Get-PSSession ComputerName パラメーターに値 Server01 を指定します。

Get-PSSession -ComputerName Server01
Id Name      ComputerName  State    ConfigurationName     Availability
-- ----      ------------  -----    -----------------     ------------
 2 Session2  Server01      Opened   Microsoft.PowerShell     Available

Get-PSSession ComputerName パラメーターの値が localhost の場合、は、 Get-PSSession で終了し、ローカルコンピューター上で保持されている pssession を取得します。 Server01 コンピューターでは、ローカルコンピューターで開始された場合でも、PSSessions は取得されません。

Get-PSSession -ComputerName localhost

現在のセッションで作成されたセッションを取得するには、パラメーターを指定せずにコマンドレットを使用 Get-PSSession します。 この例では、は、 Get-PSSession 現在のセッションで作成された PSSession を取得し、Server01 コンピューターに接続します。

Get-PSSession
Id Name      ComputerName  State    ConfigurationName     Availability
-- ----      ------------  -----    -----------------     ------------
 2 Session2  Server01      Opened   Microsoft.PowerShell     Available

セッションを切断する方法

PSSession を切断するには、コマンドレットを使用 Disconnect-PSSession します。 PSSession を特定するには、セッション パラメーターを使用するか、または Get-PSSession コマンドレットの pssession New-PSSession をに Disconnect-PSSession パイプラインで指定します。

次のコマンドは、PSSession を Server01 コンピューターに切断します。 State プロパティの値が Disconnected であり、 AvailabilityNone であることに注意してください。

Get-PSSession -ComputerName Server01 | Disconnect-PSSession
Id Name      ComputerName  State         ConfigurationName     Availability
-- ----      ------------  -----         -----------------     ------------
 2 Session2  Server01      Disconnected  Microsoft.PowerShell          None

切断されたセッションを作成するには、コマンドレットの Invoke-Command Indisconnectedsession パラメーターを使用します。 コマンドが出力を返す前に、セッションを作成し、コマンドを起動して、直ちに切断します。

次のコマンドは、Server02 リモートコンピューター上の切断されたセッションでコマンドを Get-WinEvent 実行します。

Invoke-Command -ComputerName Server02 -InDisconnectedSession -ScriptBlock {
   Get-WinEvent -LogName "*PowerShell*" }
Id Name      ComputerName  State         ConfigurationName     Availability
-- ----      ------------  -----         -----------------     ------------
 4 Session3  Server02      Disconnected  Microsoft.PowerShell          None

切断されたセッションに接続する方法

PSSession を作成したセッション、またはローカルコンピューターまたは他のコンピューター上の他のセッションから、使用可能な切断された PSSession に接続できます。

PSSession の作成、pssession でのコマンドの実行、PSSession からの切断、PowerShell の終了、コンピューターのシャットダウンを行うことができます。 後で、別のコンピューターを開いて、PSSession を取得し、接続して、切断中に PSSession で実行されたコマンドの結果を取得することができます。 その後、セッションで他のコマンドを実行できます。

切断された PSSession を接続するには、コマンドレットを使用 Connect-PSSession します。 ComputerName または connectionuri パラメーターを使用して pssession を識別します。または、から Get-PSSessionConnect-PSSession pssession を渡すこともできます。

次のコマンドは、Server02 コンピューター上のセッションを取得します。 出力には、2つの切断されたセッションが含まれています。どちらも使用できます。

Get-PSSession -ComputerName Server02
Id Name      ComputerName   State         ConfigurationName     Availability
-- ----      ------------   -----         -----------------     ------------
 2 Session2  juneb-srv8320  Disconnected  Microsoft.PowerShell          None
 4 Session3  juneb-srv8320  Disconnected  Microsoft.PowerShell          None

次のコマンドは、Session2 に接続します。 これで PSSession が開き、使用できるようになりました。

Connect-PSSession -ComputerName Server02 -Name Session2
Id Name      ComputerName    State    ConfigurationName     Availability
-- ----      ------------    -----    -----------------     ------------
 2 Session2  juneb-srv8320   Opened   Microsoft.PowerShell     Available

結果を取得する方法

切断された PSSession で実行されたコマンドの結果を取得するには、コマンドレットを使用 Receive-PSSession します。

コマンドレットを使用するのではなく、 Connect-PSSession を使用 Receive-PSSession できます。 セッションが既に再接続されている場合、は、 Receive-PSSession セッションが切断されたときに実行されたコマンドの結果を取得します。 PSSession がまだ切断されている場合、 Receive-PSSession はそれに接続し、切断されたときに実行されたコマンドの結果を取得します。

Receive-PSSession は、ジョブ (非同期) またはホストプログラムに (同期的に) 結果を返すことができます。 ジョブ または ホスト を選択するには、 outtarget パラメーターを使用します。 既定値は Host です。 ただし、受信しているコマンドが現在のセッションで ジョブ として開始されている場合、既定では ジョブ として返されます。

次のコマンドは、コマンドレットを使用 Receive-PSSession して、Server02 コンピューター上の PSSession に接続し、Session3 セッションで実行されたコマンドの Get-WinEvent 結果を取得します。 このコマンドは、 Outtarget パラメーターを使用して、 ジョブ の結果を取得します。

Receive-PSSession -ComputerName Server02 -Name Session3 -OutTarget Job
Id   Name   PSJobTypeName   State         HasMoreData     Location
--   ----   -------------   -----         -----------     --------
 3   Job3   RemoteJob       Running       True            Server02

ジョブの結果を取得するには、コマンドレットを使用 Receive-Job します。

Get-Job | Receive-Job -Keep
ProviderName: PowerShell

TimeCreated             Id LevelDisplayName Message     PSComputerName
-----------             -- ---------------- -------     --------------
5/14/2012 7:26:04 PM   400 Information      Engine stat Server02
5/14/2012 7:26:03 PM   600 Information      Provider "W Server02
5/14/2012 7:26:03 PM   600 Information      Provider "C Server02
5/14/2012 7:26:03 PM   600 Information      Provider "V Server02

状態と可用性のプロパティ

切断された PSSession の 状態可用性 のプロパティは、セッションを再接続できるかどうかを通知します。

PSSession が現在のセッションに接続されると、その状態が 開か れ、その可用性が 利用可能 になります。 PSSession から切断すると、PSSession の状態は Disconnected になり、その可用性は None になります。

State プロパティの値は、現在のセッションに関連付けられています。 値が Disconnected の場合は、PSSession が現在のセッションに接続されていないことを示します。 ただし、PSSession がすべてのセッションから切断されているわけではありません。 別のセッションに接続されている可能性があるためです。

PSSession に接続または再接続できるかどうかを判断するには、 Availability プロパティを使用します。 値 None は、セッションに接続できることを示します。 値が Busy の場合は、PSSession が別のセッションに接続されているため、PSSession に接続できないことを示します。

次の例は、同じコンピューター上の2つの PowerShell セッションで実行されます。 PSSession が切断されて再接続されると、各セッションの 状態可用性 のプロパティの値を変更することに注意してください。

# Session 1
New-PSSession -ComputerName Server30 -Name Test
Id Name   ComputerName    State         ConfigurationName     Availability
-- ----   ------------    -----         -----------------     ------------
1  Test   Server30        Opened        Microsoft.PowerShell     Available
# Session 2
Get-PSSession -ComputerName Server30 -Name Test
Id Name   ComputerName    State         ConfigurationName     Availability
-- ----   ------------    -----         -----------------     ------------
1 Test    Server30        Disconnected  Microsoft.PowerShell          Busy
# Session 1
Get-PSSession -ComputerName Server30 -Name Test | Disconnect-PSSession
Id Name   ComputerName    State         ConfigurationName     Availability
-- ----   ------------    -----         -----------------     ------------
1 Test    Server30        Disconnected  Microsoft.PowerShell          None
# Session 2
Get-PSSession -ComputerName Server30
Id Name   ComputerName    State         ConfigurationName     Availability
-- ----   ------------    -----         -----------------     ------------
1 Test    Server30        Disconnected  Microsoft.PowerShell          None
# Session 2
Connect-PSSession -ComputerName Server30 -Name Test
Id Name   ComputerName    State         ConfigurationName     Availability
-- ----   ------------    -----         -----------------     ------------
3 Test    Server30        Opened        Microsoft.PowerShell     Available
# Session 1
Get-PSSession -ComputerName Server30
Id Name   ComputerName    State         ConfigurationName     Availability
-- ----   ------------    -----         -----------------     ------------
1 Test    Server30        Disconnected  Microsoft.PowerShell          Busy
# Idle Timeout

切断されたセッションは、コマンドレットなどを使用 Remove-PSSession して削除するか、タイムアウトにするまで、リモートコンピューター上で保持されます。PSSession の IdleTimeout プロパティは、切断されたセッションが削除されるまでの期間を決定します。

PSSessions は、 ハートビートスレッド が応答を受信しなかったときにアイドル状態になります。 セッションを切断すると、切断されたセッションでコマンドがまだ実行されている場合でも、アイドル状態になり、 IdleTimeout クロックが開始されます。 PowerShell は、切断されたセッションをアクティブにし、アイドル状態と見なします。

セッションを作成または切断するときに、PSSession のアイドルタイムアウトが、必要なセッションを維持するのに十分な長さであることを確認します。ただし、リモートコンピューター上の不要なリソースを消費することはありません。

セッション 構成の IdleTimeoutMs プロパティは、セッション構成を使用するセッションの既定のアイドル タイムアウトを決定します。 既定値はオーバーライドできますが、使用する値がセッション構成の MaxIdleTimeoutMs プロパティを超えすることはできません。

セッション構成の IdleTimeoutMsMaxIdleTimeoutMs の値を検索するには、次のコマンド形式を使用します。

Get-PSSessionConfiguration |
  Format-Table Name, IdleTimeoutMs, MaxIdleTimeoutMs

セッション構成の既定値をオーバーライドし、PSSession を作成するときに、および切断するときに PSSession のアイドル タイムアウトを設定できます。

リモート コンピューターの Administrators グループのメンバーである場合は、セッション構成の IdleTimeoutMs プロパティと MaxIdleTimeoutMs プロパティを作成および変更できます。

アイドル タイムアウト値

セッション構成とセッション オプションのアイドル タイムアウト値はミリ秒単位です。 セッションとセッション構成オプションのアイドル タイムアウト値は秒単位です。

PSSession (、Invoke-Command) を作成するときに、および PSSession (New-PSSession) から切断するときに、PSSession のアイドル タイムアウトを設定できますDisconnect-PSSession。 ただし、PSSession () に接続したり、結果 (Connect-PSSession) を取得したりするときに 、IdleTimeout 値を変更したりできないReceive-PSSession

コマンドレット Connect-PSSessionReceive-PSSession コマンドレットには 、SessionOption オブジェクトを受け取る SessionOption New-PSSessionOption パラメーターがあります (コマンドレットによって返されるオブジェクトなど)。 SessionOption オブジェクトの IdleTimeout 値と基本設定変数の IdleTimeout 値では、 または コマンドの PSSession Connect-PSSessionIdleTimeout $PSSessionOption の値は変更Receive-PSSessionされません。

特定のアイドル タイムアウト値を持つ PSSession を作成するには、基本設定変数を $PSSessionOption 作成します。 IdleTimeout プロパティの値を目的 の値 (ミリ秒単位) に設定します。

PSSessions を作成すると、 $PSSessionOption 変数の値がセッション構成の値よりも優先されます。

たとえば、次のコマンドは、アイドル タイムアウトを 48 時間に設定します。

$PSSessionOption = New-PSSessionOption -IdleTimeoutMSec 172800000

特定のアイドル タイムアウト値を持つ PSSession を作成するには、 コマンドレットの IdleTimeoutMSec パラメーターを使用 New-PSSessionOption します。 次に、 または コマンドレットの SessionOption パラメーターの値で session オプションをNew-PSSession``Invoke-Command使用します。

セッションの作成時に設定される値は、基本 $PSSessionOption 設定変数とセッション構成で設定された値よりも優先されます。

次に例を示します。

$o = New-PSSessionOption -IdleTimeoutMSec 172800000
New-PSSession -SessionOption $o

切断時に PSSession のアイドル タイムアウトを変更するには、 コマンドレットの IdleTimeoutSec パラメーターを使用 Disconnect-PSSession します。

次に例を示します。

Disconnect-PSSession -IdleTimeoutSec 172800

特定のアイドル タイムアウトと最大アイドル タイムアウトを使用してセッション構成を作成するには、コマンドレットの IdleTimeoutSec パラメーターと MaxIdleTimeoutSec パラメーターを使用 New-PSTransportOption します。 次に、 の TransportOption パラメーターの値で transport オプションを 使用します Register-PSSessionConfiguration

次に例を示します。

$o = New-PSTransportOption -IdleTimeoutSec 172800 -MaxIdleTimeoutSec 259200
Register-PSSessionConfiguration -Name Test -TransportOption $o

セッション構成の既定のアイドル タイムアウトと最大アイドル タイムアウトを変更するには、コマンドレットの IdleTimeoutSec パラメーターと MaxIdleTimeoutSec パラメーターを使用 New-PSTransportOption します。 次に、 の TransportOption パラメーターの値で transport オプションを 使用します Set-PSSessionConfiguration

次に例を示します。

$o = New-PSTransportOption -IdleTimeoutSec 172800 -MaxIdleTimeoutSec 259200
Set-PSSessionConfiguration -Name Test -TransportOption $o

出力バッファリング モード

PSSession の出力バッファリング モードは、PSSession の出力バッファーが満たされた場合のコマンド出力の管理方法を決定します。

切断されたセッションでは、出力バッファリング モードによって、セッションが切断されている間もコマンドが引き続き実行されるかどうかが効果的に判断されます。

有効な値は次のとおりです。

  • [ブロック] 。 出力バッファーがいっぱいのとき、バッファーが空くまで実行が中断されます。 既定値。
  • [削除] 。 出力バッファーがいっぱいのとき、実行は続行されます。 新しい出力が生成されると、最も古い出力は破棄されます。

[ブロック ] はデータを保持しますが、コマンドが中断される可能性があります。 値が Drop の場合は、データが失われる可能性はありますが、コマンドを完了できます。 Drop 値を使用すると、コマンド出力がディスク上のファイルにリダイレクトされます。 この値は、切断されたセッションに推奨されます。

セッション 構成の OutputBufferingMode プロパティは、セッション構成を使用するセッションの既定の出力バッファリング モードを決定します。

セッション構成の OutputBufferingMode の値を検索するには、次のいずれかのコマンド形式を使用できます。

(Get-PSSessionConfiguration <ConfigurationName>).OutputBufferingMode
Get-PSSessionConfiguration | Format-Table Name, OutputBufferingMode

セッション構成で既定値をオーバーライドし、PSSession の作成時、切断時、再接続時に PSSession の出力バッファリング モードを設定できます。

リモート コンピューターの Administrators グループのメンバーである場合は、セッション構成の出力バッファリング モードを作成および変更できます。

出力バッファリング モードが Drop$PSSessionOption の PSSession を作成するには、OutputBufferingMode プロパティの値が Drop である基本設定変数を作成 します

PSSessions を作成すると、 $PSSessionOption 変数の値がセッション構成の値よりも優先されます。

次に例を示します。

$PSSessionOption = New-PSSessionOption -OutputBufferingMode Drop

出力バッファリング モードが Drop の PSSession を作成するには、コマンドレットの OutputBufferingMode New-PSSessionOption パラメーターを使用して、Drop の値を持つセッション オプションを作成 します。 次に、 または コマンドレットの SessionOption パラメーターの値で session オプションをNew-PSSession``Invoke-Command使用します。

セッションの作成時に設定される値は、基本 $PSSessionOption 設定変数とセッション構成で設定された値よりも優先されます。

次に例を示します。

$o = New-PSSessionOption -OutputBufferingMode Drop
New-PSSession -SessionOption $o

切断時に PSSession の出力バッファリング モードを変更するには、 コマンドレットの OutputBufferingMode パラメーターを使用 Disconnect-PSSession します。

次に例を示します。

Disconnect-PSSession -OutputBufferingMode Drop

再接続時に PSSession の出力バッファリング モードを変更するには、コマンドレットの OutputBufferingMode New-PSSessionOption パラメーターを使用して、Drop の値を持つセッション オプションを作成 します。 次に、 または の SessionOption パラメーターの値で session オプションを使用 Connect-PSSession します Receive-PSSession

次に例を示します。

$o = New-PSSessionOption -OutputBufferingMode Drop
Connect-PSSession -ComputerName Server01 -Name Test -SessionOption $o

既定の出力バッファリング モード の Drop でセッション構成を作成するには、コマンドレットの OutputBufferingMode New-PSTransportOption パラメーターを使用して、Drop の値を持つトランスポート オプション オブジェクトを作成 します。 次に、 の TransportOption パラメーターの値で transport オプションを 使用します Register-PSSessionConfiguration

次に例を示します。

$o = New-PSTransportOption -OutputBufferingMode Drop
Register-PSSessionConfiguration -Name Test -TransportOption $o

セッション構成の既定の出力バッファリング モードを変更するには、コマンドレットの OutputBufferingMode New-PSTransportOption パラメーターを使用して、Drop の値を持つトランスポート オプションを作成 します。 次に、 の SessionOption パラメーターの値に トランスポート オプションを 使用します Set-PSSessionConfiguration

次に例を示します。

$o = New-PSTransportOption -OutputBufferingMode Drop
Set-PSSessionConfiguration -Name Test -TransportOption $o

ループバック セッションの切断

ループバック セッション (ローカル セッション) は、同じコンピューターで開始および終了する PSSession です。 他の PSSession と同様に、アクティブなループバック セッションは接続のリモートエンド (ローカル コンピューター) 上のコンピューターに保持されます。そのため、ループバック セッションから切断して再接続できます。

既定では、ループバック セッションは、他のコンピューターにアクセスするためにセッションでコマンドを実行できないネットワーク セキュリティ トークンを使用して作成されます。 ローカル コンピューターまたはリモート コンピューター上の任意のセッションからネットワーク セキュリティ トークンを持つループバック セッションに再接続できます。

ただし、、、または コマンドレット の EnableNetworkAccess New-PSSession``Enter-PSSession``Invoke-Command パラメーターを使用する場合、ループバック セッションは対話型のセキュリティ トークンを使用して作成されます。 対話型トークンを使用すると、ループバック セッションで実行されるコマンドで、他のコンピューターからデータを取得できます。

対話型トークンを使用してループバック セッションを切断し、同じセッションまたは同じコンピューター上の別のセッションから再接続できます。 ただし、悪意のあるアクセスを防ぐために、作成されたコンピューターからのみ対話型トークンを使用してループバック セッションに再接続できます。

切断されたセッションでのジョブの待機

コマンドレット Wait-Job は、ジョブが完了するまで待機し、コマンド プロンプトまたは次のコマンドに戻します。 既定では、 は Wait-Job 、ジョブが実行されているセッションが切断されている場合に を返します。 セッションが再接続 Wait-Job されるまでコマンドレットに待機を指示するには、 [開 く] 状態で Force パラメーターを 使用 します。 詳細については、「 Wait-Job」を参照してください

堅牢なセッションと意図しない切断

コンピューターの障害やネットワークの停止により、PSSession が意図せずに切断される可能性があります。 PowerShell は PSSession の回復を試みるが、その成功は原因の重大度と期間によって異なります。

意図せずに切断された PSSession の状態は、 Broken または Closed である可能性がありますが、切断されている可能性 があります。 [状態] の [切断] の場合は、セッションが意図的に切断された場合と同じ手法を使用して PSSession を管理できます。 たとえば、 コマンドレットを使用Connect-PSSession``Receive-PSSessionしてセッションに再接続し、 コマンドレットを使用して、セッションが切断されている間に実行されたコマンドの結果を取得できます。

コマンドが PSSession で実行されている間に PSSession が作成されたセッションを閉じる (終了) 場合、PowerShell はリモート コンピューターの切断状態で PSSession を維持します。 PSSession が作成されたセッションを閉じる (終了する) が、PSSession で実行されているコマンドがない場合、PowerShell は PSSession の維持を試みない。

関連項目