Sdílet prostřednictvím


Remove-PSSession

Zavře jednu nebo více relací PowerShellu (PSSessions).

Syntaxe

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>]

Description

Rutina Remove-PSSession zavře relace PowerShellu (PSSessions) v aktuální relaci. Zastaví všechny příkazy, které běží v psSessions, končí psSession a uvolní prostředky, které psSession používal. Pokud je psSession připojen ke vzdálenému počítači, tato rutina také ukončí připojení mezi místními a vzdálenými počítači.

Pokud chcete odebrat instanci PSSession, zadejte název, název počítače, ID nebo ID instance relace.

Pokud jste uložili psSession do proměnné, objekt relace zůstane v proměnné, ale stav PSSession je Uzavřeno.

Příklady

Příklad 1: Odebrání relací podle ID

Remove-PSSession -Id 1, 2

Tento příkaz odebere psSessions , které mají ID 1 a 2.

Příklad 2: Odebrání všech relací v aktuální relaci

Get-PSSession | Remove-PSSession
Remove-PSSession -Session (Get-PSSession)
$s = Get-PSSession
Remove-PSSession -Session $s

Tyto příkazy odeberou všechny psSessions v aktuální relaci. I když tyto tři formáty příkazů vypadají jinak, mají stejný účinek.

Příklad 3: Zavření relací podle názvu

$r = Get-PSSession -ComputerName Serv*
$r | Remove-PSSession

Tyto příkazy zavře psSessions, které jsou připojeny k počítačům, které mají názvy začínající Serv.

Příklad 4: Zavření relací připojených k portu

Get-PSSession | where {$_.port -eq 90} | Remove-PSSession

Tento příkaz zavře relace PSSession, které jsou připojené k portu 90. Tento formát příkazu můžete použít k identifikaci psSessions podle vlastností jiných než Název ComputerName, Name, InstanceID a ID.

Příklad 5: Zavření relace podle ID instance

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

Tyto příkazy ukazují, jak zavřít PSSession na základě ID instance nebo RemoteRunspaceID.

První příkaz pomocí rutiny Get-PSSession získá psSessions v aktuální relaci. Používá operátor kanálu (|) k odeslání psSessions do Format-Table rutiny, která formátuje vlastnosti ComputerName a InstanceID v tabulce. Parametr AutoSize komprimuje sloupce pro zobrazení.

Z výsledného zobrazení můžete identifikovat psSession , která se má zavřít, a zkopírovat a vložit ID instance této PSSession do druhého příkazu.

Druhý příkaz pomocí rutiny Remove-PSSession odebere instanci PSSession se zadaným ID instance.

Příklad 6: Vytvoření funkce, která odstraní všechny relace v aktuální relaci

Function EndPSS { Get-PSSession | Remove-PSSession }

Tato funkce zavře každou psSession v aktuální relaci. Po přidání této funkce do profilu PowerShellu zadejte EndPSSvšechny relace.

Parametry

-ComputerName

Určuje pole názvů počítačů. Tato rutina zavře relace PSSession , které jsou připojené k zadaným počítačům. Jsou povoleny zástupné znaky.

Zadejte název NetBIOS, IP adresu nebo plně kvalifikovaný název domény jednoho nebo více vzdálených počítačů. Chcete-li zadat místní počítač, zadejte název localhostpočítače nebo tečku (.).

Typ:String[]
Aliasy:Cn
Position:0
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:True

-Confirm

Před spuštěním rutiny zobrazí výzvu k potvrzení.

Typ:SwitchParameter
Aliasy:cf
Position:Named
Default value:False
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-ContainerId

Určuje pole ID kontejnerů. Tato rutina odebere relace pro každý ze zadaných kontejnerů. docker ps Pomocí příkazu získáte seznam ID kontejnerů. Další informace najdete v nápovědě k příkazu docker ps .

Typ:String[]
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-Id

Určuje pole ID relací. Tato rutina zavře relace PSSession se zadanými ID. Zadejte jedno nebo více ID oddělených čárkami nebo pomocí operátoru rozsahu (..) zadejte rozsah ID.

ID je celé číslo, které jednoznačně identifikuje psSession v aktuální relaci. Je jednodušší zapamatovat a zadat než InstanceId, ale je jedinečný pouze v aktuální relaci. Pokud chcete zjistit ID psSession, spusťte rutinu Get-PSSession bez parametrů.

Typ:Int32[]
Position:0
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-InstanceId

Určuje pole ID instancí. Tato rutina zavře instance PSSession, které mají zadané ID instancí.

ID instance je identifikátor GUID, který jednoznačně identifikuje psSession v aktuální relaci. ID instance je jedinečné, i když máte na jednom počítači spuštěných více relací.

ID instance je uloženo ve vlastnosti InstanceID objektu, který představuje PSSession. Chcete-li zjistit ID instance PSSessions v aktuální relaci, zadejte Get-PSSession | Format-Table Name, ComputerName, InstanceId.

Typ:Guid[]
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-Name

Určuje pole popisných názvů relací. Tato rutina zavře instance PSSession , které mají zadané popisné názvy. Jsou povoleny zástupné znaky.

Vzhledem k tomu, že popisný název PSSession nemusí být jedinečný, zvažte při použití parametru Name také použití parametru WhatIf nebo Confirm v Remove-PSSession příkazu.

Typ:String[]
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:True

-Session

Určuje objekty relace psSessions , které se mají zavřít. Zadejte proměnnou, která obsahuje psSessions nebo příkaz, který vytvoří nebo získá psSessions, například New-PSSession příkaz nebo Get-PSSession příkaz. Do objektu relace můžete také pipetovat Remove-PSSessionjeden nebo více objektů relace .

Typ:PSSession[]
Position:0
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-VMId

Určuje pole ID virtuálních počítačů. Tato rutina spustí interaktivní relaci s jednotlivými zadanými virtuálními počítači. K zobrazení dostupných virtuálních počítačů použijte následující příkaz:

Get-VM | Select-Object -Property Name, ID

Typ:Guid[]
Aliasy:VMGuid
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-VMName

Určuje pole názvů virtuálních počítačů. Tato rutina spustí interaktivní relaci s jednotlivými zadanými virtuálními počítači. K zobrazení dostupných virtuálních počítačů použijte rutinu Get-VM .

Typ:String[]
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-WhatIf

Zobrazuje, co by se stalo při spuštění rutiny. Rutina není spuštěna.

Typ:SwitchParameter
Aliasy:wi
Position:Named
Default value:False
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

Vstupy

PSSession

K této rutině můžete připojit objekt relace.

Výstupy

None

Tato rutina nevrátí žádný výstup.

Poznámky

Windows PowerShell obsahuje následující aliasy pro Remove-PSSession:

  • rsn

  • Parametr ID je povinný. Chcete-li odstranit všechny psSessions v aktuální relaci, zadejte Get-PSSession | Remove-PSSession.

  • Služba PSSession používá trvalé připojení ke vzdálenému počítači. Vytvořte psSession pro spuštění řady příkazů, které sdílejí data. Další informace potřebujete zadáním Get-Help about_PSSessions.

  • Relace PSSession jsou specifické pro aktuální relaci. Když relaci ukončíte, relace PSSession, které jste vytvořili v této relaci, jsou vynuceně uzavřeny.