Remove-PSSession
1 つ以上の PowerShell セッション (PSSession) を閉じます。
構文
Remove-PSSession
[-Id] <Int32[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Remove-PSSession
[-Session] <PSSession[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Remove-PSSession
-ContainerId <String[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Remove-PSSession
-VMId <Guid[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Remove-PSSession
-VMName <String[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Remove-PSSession
-InstanceId <Guid[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Remove-PSSession
-Name <String[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Remove-PSSession
[-ComputerName] <String[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
コマンドレットは Remove-PSSession
、現在のセッションの PowerShell セッション (PSSessions) を閉じます。 PSSession で実行されているコマンドをすべて停止し、PSSession を終了して、PSSession が使用していたリソースを解放します。 PSSession がリモート コンピューターに接続されている場合、このコマンドレットはローカル コンピューターとリモート コンピューター間の接続も閉じます。
PSSession を削除するには、セッションの名前、ComputerName、ID、または InstanceID を入力します。
PSSession を変数に保存した場合、セッション オブジェクトは変数に残りますが、PSSession の状態は Closed です。
例
例 1: ID でセッションを削除する
Remove-PSSession -Id 1, 2
このコマンドは、ID と を持つ PSSession を削除します1
2
。
例 2: 現在のセッションのすべてのセッションを削除する
Get-PSSession | Remove-PSSession
Remove-PSSession -Session (Get-PSSession)
$s = Get-PSSession
Remove-PSSession -Session $s
これらのコマンドは、現在のセッション内のすべての PSSession を 削除します。 これらの 3 つのコマンドの形式は異なっていますが、効果は同じです。
例 3: 名前でセッションを閉じる
$r = Get-PSSession -ComputerName Serv*
$r | Remove-PSSession
これらのコマンドは、 でServ
始まる名前を持つコンピューターに接続されている PSSession を閉じます。
例 4: ポートに接続されているセッションを閉じる
Get-PSSession | where {$_.port -eq 90} | Remove-PSSession
このコマンドは、ポート 90 に接続されている PSSession を 閉じます。 このコマンド形式を使用すると、ComputerName、Name、InstanceID、ID 以外のプロパティで PSSession を識別できます。
例 5: インスタンス ID でセッションを閉じる
Get-PSSession | Format-Table ComputerName, InstanceID -AutoSize
ComputerName InstanceId
------------ ----------------
Server01 875d231b-2788-4f36-9f67-2e50d63bb82a
localhost c065ffa0-02c4-406e-84a3-dacb0d677868
Server02 4699cdbc-61d5-4e0d-b916-84f82ebede1f
Server03 4e5a3245-4c63-43e4-88d0-a7798bfc2414
TX-TEST-01 fc4e9dfa-f246-452d-9fa3-1adbdd64ae85
Remove-PSSession -InstanceID fc4e9dfa-f246-452d-9fa3-1adbdd64ae85
これらのコマンドは、インスタンス ID または RemoteRunspaceID に基づいて PSSession を閉じる方法を示しています。
最初のコマンドでは、 コマンドレットを Get-PSSession
使用して、現在のセッションの PSSession を 取得します。
パイプライン演算子 (|
) を使用して PSSessions を コマンドレットに Format-Table
送信し、テーブル内の ComputerName プロパティと InstanceID プロパティの書式を設定します。 AutoSize パラメーターは、表示する列を圧縮します。
結果の表示から、閉じる PSSession を識別し、その PSSession の InstanceID をコピーして 2 番目のコマンドに貼り付けることができます。
2 番目のコマンドでは、 コマンドレットを Remove-PSSession
使用して、指定したインスタンス ID を持つ PSSession を削除します。
例 6: 現在のセッション内のすべてのセッションを削除する関数をCreateする
Function EndPSS { Get-PSSession | Remove-PSSession }
この関数は、現在のセッションのすべての PSSession を閉じます。 この関数を PowerShell プロファイルに追加した後、すべてのセッションを削除するには、「」と入力します EndPSS
。
パラメーター
-ComputerName
コンピューターの名前の配列を指定します。 このコマンドレットは、指定したコンピューターに接続されている PSSession を閉じます。 ワイルドカード文字を使用できます。
1 台または複数のリモート コンピューターの NetBIOS 名、IP アドレス、または完全修飾ドメイン名を入力します。 ローカル コンピューターを指定するには、コンピューター名、、 localhost
またはドット (.
) を入力します。
Type: | String[] |
Aliases: | Cn |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-Confirm
コマンドレットの実行前に確認を求めるメッセージが表示されます。
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ContainerId
コンテナーの ID の配列を指定します。 このコマンドレットは、指定された各コンテナーのセッションを削除します。 コマンドを docker ps
使用して、コンテナー ID の一覧を取得します。 詳細については、 docker ps コマンドのヘルプを参照してください。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Id
セッションの ID の配列を指定します。 このコマンドレットは、指定された ID を持つ PSSession を閉じます。
1 つ以上の ID をコンマで区切って入力するか、範囲演算子 (..
) を使用して ID の範囲を指定します。
ID は、現在のセッションの PSSession を一意に識別する整数です。 InstanceId よりも覚えて入力する方が簡単ですが、現在のセッションでのみ一意です。 PSSession の ID を見つけるには、パラメーターを指定せずに コマンドレットをGet-PSSession
実行します。
Type: | Int32[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-InstanceId
インスタンス ID の配列を指定します。 このコマンドレットは、指定されたインスタンス ID を持つ PSSession を閉じます。
インスタンス ID は、現在のセッションの PSSession を一意に識別する GUID です。 インスタンス ID は、1 台のコンピューターで複数のセッションが実行されている場合でも一意です。
インスタンス ID は、PSSession を表す オブジェクトの InstanceID プロパティに格納されます。 現在のセッションで PSSessions の InstanceID を見つけるには、「」と入力しますGet-PSSession | Format-Table Name, ComputerName, InstanceId
。
Type: | Guid[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
セッションのフレンドリ名の配列を指定します。 このコマンドレットは、指定されたフレンドリ名を持つ PSSession を 閉じます。 ワイルドカード文字を使用できます。
PSSession のフレンドリ名は一意ではない可能性があるため、Name パラメーターを使用する場合は、コマンドで Remove-PSSession
WhatIf パラメーターまたは Confirm パラメーターを使用することも検討してください。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-Session
閉じる PSSessions のセッション オブジェクトを指定します。 PSSessions を含む変数、または PSSessions を作成または取得するコマンド (または Get-PSSession
コマンドなど) をNew-PSSession
入力します。 1 つ以上のセッション オブジェクトを に Remove-PSSession
パイプすることもできます。
Type: | PSSession[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-VMId
仮想マシンの ID の配列を指定します。 このコマンドレットは、指定された各仮想マシンとの対話型セッションを開始します。 使用可能な仮想マシンを表示するには、次のコマンドを使用します。
Get-VM | Select-Object -Property Name, ID
Type: | Guid[] |
Aliases: | VMGuid |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-VMName
仮想マシンの名前の配列を指定します。 このコマンドレットは、指定された各仮想マシンとの対話型セッションを開始します。 使用可能な仮想マシンを表示するには、 コマンドレットを Get-VM
使用します。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
入力
セッション オブジェクトをこのコマンドレットにパイプできます。
出力
None
このコマンドレットは、出力を返しません。
メモ
PowerShell には、 の次のエイリアスが Remove-PSSession
含まれています。
すべてのプラットフォーム:
rsn
Id パラメーターは必須です。 現在のセッション内のすべての PSSession を 削除するには、「」と入力します
Get-PSSession | Remove-PSSession
。PSSession は、リモート コンピューターへの永続的な接続を使用します。 PSSession をCreateして、データを共有する一連のコマンドを実行します。 詳細を表示するには「
Get-Help about_PSSessions
」を入力します。PSSessions は、現在のセッションに固有です。 セッションを終了すると、そのセッションで作成した PSSession は 強制的に閉じられます。