Disconnect-PSSession
Rozłącza się z sesją.
Składnia
Session (domyślnie)
Disconnect-PSSession
[-Session] <PSSession[]>
[-IdleTimeoutSec <Int32>]
[-OutputBufferingMode <OutputBufferingMode>]
[-ThrottleLimit <Int32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Name
Disconnect-PSSession
-Name <String[]>
[-IdleTimeoutSec <Int32>]
[-OutputBufferingMode <OutputBufferingMode>]
[-ThrottleLimit <Int32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
InstanceId
Disconnect-PSSession
-InstanceId <Guid[]>
[-IdleTimeoutSec <Int32>]
[-OutputBufferingMode <OutputBufferingMode>]
[-ThrottleLimit <Int32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Id
Disconnect-PSSession
[-Id] <Int32[]>
[-IdleTimeoutSec <Int32>]
[-OutputBufferingMode <OutputBufferingMode>]
[-ThrottleLimit <Int32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Opis
Polecenie Disconnect-PSSession cmdlet rozłącza sesję programu PowerShell ("PSSession"), taką jak sesja uruchomiona New-PSSession przy użyciu polecenia cmdlet, od bieżącej sesji. W związku z tym PSSession jest w stanie rozłączenia. Możesz połączyć się z odłączonym PSSession z bieżącej sesji lub z innej sesji na komputerze lokalnym lub innym komputerze.
Polecenie Disconnect-PSSession cmdlet rozłącza tylko otwarte PSSessions połączone z bieżącą sesją.
Disconnect-PSSession nie można rozłączyć przerwanych lub zamkniętych sesji PSSessions ani interaktywnych sesji PSSessions uruchomionych przy użyciu Enter-PSSession polecenia cmdlet i nie można rozłączyć PSSessions połączonych z innymi sesjami.
Aby ponownie nawiązać połączenie z odłączonym PSSession, użyj Connect-PSSession poleceń cmdlet lub Receive-PSSession .
Gdy program PSSession zostanie rozłączony, polecenia w programie PSSession będą nadal działać do momentu ich ukończenia, chyba że upłynie limit czasu PSSession lub polecenia w programie PSSession zostaną zablokowane przez pełny bufor wyjściowy. Aby zmienić limit czasu bezczynności, użyj parametru IdleTimeoutSec. Aby zmienić tryb buforowania danych wyjściowych, użyj parametru OutputBufferingMode Możesz również użyć parametru InDisconnectedSession polecenia cmdlet Invoke-Command, aby uruchomić polecenie w rozłączonej sesji.
Aby uzyskać więcej informacji na temat funkcji rozłączonych sesji, zobacz about_Remote_Disconnected_Sessions.
Ten cmdlet został wprowadzony w programie Windows PowerShell 3.0.
Przykłady
Przykład 1 — rozłączanie sesji według nazwy
To polecenie odłącza UpdateSession PSSession na komputerze Server01 od bieżącej sesji. W poleceniu użyto parametru Name do zidentyfikowania elementu PSSession.
PS> Disconnect-PSSession -Name UpdateSession
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 UpdateSession Server01 Disconnected Microsoft.PowerShell None
Dane wyjściowe pokazują, że próba rozłączenia zakończyła się pomyślnie. Stan sesji to Rozłączona, a Dostępność to Brak, co oznacza, że sesja nie jest zajęta i można ją ponownie połączyć.
Przykład 2 — odłączanie sesji od określonego komputera
To polecenie rozłącza program ITTask PSSession na komputerze Server12 z bieżącą sesją.
Sesja ITTask została utworzona w bieżącej sesji i łączy się z komputerem Server12. Polecenie używa polecenia cmdlet Get-PSSession, aby pobrać sesję i polecenie cmdlet Disconnect-PSSession, aby je rozłączyć.
PS> Get-PSSession -ComputerName Server12 -Name ITTask |
Disconnect-PSSession -OutputBufferingMode Drop -IdleTimeoutSec 86400
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 ITTask Server12 Disconnected ITTasks None
Polecenie Disconnect-PSSession używa parametru OutputBufferingMode w celu ustawienia trybu wyjściowego na Drop. To ustawienie zapewnia, że skrypt uruchomiony w sesji może nadal działać, nawet jeśli bufor wyjściowy sesji jest pełny. Ponieważ skrypt zapisuje swoje dane wyjściowe w raporcie w udziale plików, inne dane wyjściowe mogą zostać utracone bez konsekwencji.
Polecenie używa również parametru IdleTimeoutSec, aby przedłużyć limit czasu bezczynności sesji do 24 godzin. To ustawienie umożliwia administratorowi lub innym administratorom ponowne nawiązanie połączenia z sesją w celu sprawdzenia, czy skrypt został uruchomiony i w razie potrzeby rozwiąż problemy.
Przykład 3 — używanie wielu psSessions na wielu komputerach
W tej serii poleceń pokazano, jak polecenie cmdlet Disconnect-PSSession może być używane w scenariuszu przedsiębiorstwa. W takim przypadku nowy technik uruchamia skrypt w sesji na komputerze zdalnym i występuje problem. Technik rozłącza się z sesją, aby bardziej doświadczony menedżer mógł nawiązać połączenie z sesją i rozwiązać problem.
PS> $s = New-PSSession -ComputerName Srv1, Srv2, Srv30 -Name ITTask
PS> Invoke-Command $s -FilePath \\Server01\Scripts\Get-PatchStatus.ps1
PS> Get-PSSession -Name ITTask -ComputerName Srv1 | Disconnect-PSSession
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 ITTask Srv1 Disconnected Microsoft.PowerShell None
PS> Get-PSSession -ComputerName Srv1, Srv2, Srv30 -Name ITTask
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 ITTask Srv1 Disconnected Microsoft.PowerShell None
2 ITTask Srv2 Opened Microsoft.PowerShell Available
3 ITTask Srv30 Opened Microsoft.PowerShell Available
PS> Get-PSSession -ComputerName Srv1 -Name ITTask -Credential Domain01\User01
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 ITTask Srv1 Disconnected Microsoft.PowerShell None
PS> $s = Connect-PSSession -ComputerName Srv1 -Name ITTask -Credential Domain01\User01
PS> Invoke-Command -Session $s {dir $home\Scripts\PatchStatusOutput.ps1}
PS> Invoke-Command -Session $s {mkdir $home\Scripts\PatchStatusOutput}
PS> Invoke-Command -Session $s -FilePath \\Server01\Scripts\Get-PatchStatus.ps1
PS> Disconnect-PSSession -Session $s
Technik rozpoczyna się od utworzenia sesji na kilku komputerach zdalnych i uruchomienia skryptu w każdej sesji. Pierwsze polecenie używa New-PSSession polecenia cmdlet do utworzenia sesji ITTask na trzech komputerach zdalnych. Polecenie zapisuje sesje w zmiennej $s. Drugie polecenie używa parametru FilePath polecenia Invoke-Command cmdlet w celu uruchomienia skryptu w sesjach w zmiennej $s.
Skrypt uruchomiony na komputerze Srv1 generuje nieoczekiwane błędy. Technik kontaktuje się ze swoim menedżerem i prosi o pomoc. Kierownik nakazuje technikowi odłączenie się od sesji, aby mógł zbadać sprawę. Drugie polecenie używa Get-PSSession polecenia cmdlet w celu pobrania sesji ITTask na komputerze Srv1 i Disconnect-PSSession polecenia cmdlet w celu jej rozłączenia. To polecenie nie ma wpływu na sesje ITTask na innych komputerach.
Trzecie polecenie używa Get-PSSession polecenia cmdlet w celu pobrania sesji ITTask. Dane wyjściowe pokazują, że sesje ITTask na komputerach Srv2 i Srv30 nie zostały dotknięte poleceniem rozłączenia.
Menedżer loguje się do swojego komputera domowego, łączy się z siecią firmową, uruchamia program Windows PowerShell i używa Get-PSSession polecenia cmdlet w celu pobrania sesji ITTask na komputerze Srv1. Używa poświadczeń technika do uzyskania dostępu do sesji.
Następnie menedżer używa Connect-PSSession polecenia cmdlet do nawiązania połączenia z sesją ITTask na komputerze Srv1. Polecenie zapisuje sesję w zmiennej $s.
Menedżer używa polecenia cmdlet Invoke-Command do uruchamiania niektórych poleceń diagnostycznych w sesji w zmiennej $s. Rozpoznaje, że skrypt nie powiódł się, ponieważ nie znalazł wymaganego katalogu.
Menedżer używa funkcji MkDir do utworzenia katalogu, a następnie uruchamia ponownie skrypt Get-PatchStatus.ps1 i rozłącza się z sesją. Menedżer zgłasza swoje ustalenia technikowi, sugeruje, że ponownie łączy się z sesją w celu ukończenia zadań i prosi go o dodanie polecenia do skryptu Get-PatchStatus.ps1, który tworzy wymagany katalog, jeśli nie istnieje.
Przykład 4 — zmiana wartości limitu czasu dla usługi PSSession
W tym przykładzie pokazano, jak poprawić wartość właściwości IdleTimeout sesji, aby można było ją odłączyć.
Właściwość limitu czasu bezczynności sesji ma kluczowe znaczenie dla rozłączonych sesji, ponieważ określa, jak długo jest utrzymywana rozłączona sesja przed usunięciem. Możesz ustawić opcję limitu czasu bezczynności podczas tworzenia sesji i po jej rozłączeniu. Wartości domyślne limitu czasu bezczynności sesji są ustawiane w zmiennej preferencji $PSSessionOption na komputerze lokalnym i w konfiguracji sesji na komputerze zdalnym. Wartości ustawione dla sesji mają pierwszeństwo przed wartościami ustawionymi w konfiguracji sesji, ale wartości sesji nie mogą przekraczać limitów przydziału ustawionych w konfiguracji sesji, takich jak MaxIdleTimeoutMs wartość.
PS> $Timeout = New-PSSessionOption -IdleTimeout 172800000
PS> $s = New-PSSession -Computer Server01 -Name ITTask -SessionOption $Timeout
PS> Disconnect-PSSession -Session $s
Disconnect-PSSession : The session ITTask cannot be disconnected because the specified
idle timeout value 172800(seconds) is either greater than the server maximum allowed
43200 (seconds) or less that the minimum allowed60(seconds). Choose an idle time out
value that is within the allowed range and try again.
PS> Invoke-Command -ComputerName Server01 {Get-PSSessionConfiguration Microsoft.PowerShell} |
Format-List -Property *
Architecture : 64
Filename : %windir%\system32\pwrshplugin.dll
ResourceUri : https://schemas.microsoft.com/powershell/microsoft.powershell
MaxConcurrentCommandsPerShell : 1000
UseSharedProcess : false
ProcessIdleTimeoutSec : 0
xmlns : https://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration
MaxConcurrentUsers : 5
lang : en-US
SupportsOptions : true
ExactMatch : true
RunAsUser :
IdleTimeoutms : 7200000
PSVersion : 3.0
OutputBufferingMode : Block
AutoRestart : false
SecurityDescriptorSddl : O:NSG:BAD:P(A;;GA;;;BA)S:P(AU;FA;GA;;;WD)(AU;SA;GXGW;;;WD)
MaxMemoryPerShellMB : 1024
MaxIdleTimeoutms : 2147483647
Uri : https://schemas.microsoft.com/powershell/microsoft.powershell
SDKVersion : 2
Name : microsoft.powershell
XmlRenderingType : text
Capability : {Shell}
RunAsPassword :
MaxProcessesPerShell : 15
ParentResourceUri : https://schemas.microsoft.com/powershell/microsoft.powershell
Enabled : true
MaxShells : 25
MaxShellsPerUser : 25
Permission : BUILTIN\Administrators AccessAllowed
PSComputerName : localhost
RunspaceId : aea84310-6dbf-4c21-90ac-13980039925a
PSShowComputerName : True
PS> $s.Runspace.ConnectionInfo
ConnectionUri : http://Server01/wsman
ComputerName : Server01
Scheme : http
Port : 80
AppName : /wsman
Credential :
ShellUri : https://schemas.microsoft.com/powershell/Microsoft.PowerShell
AuthenticationMechanism : Default
CertificateThumbprint :
MaximumConnectionRedirectionCount : 5
MaximumReceivedDataSizePerCommand :
MaximumReceivedObjectSize : 209715200
UseCompression : True
NoMachineProfile : False
ProxyAccessType : None
ProxyAuthentication : Negotiate
ProxyCredential :
SkipCACheck : False
SkipCNCheck : False
SkipRevocationCheck : False
NoEncryption : False
UseUTF16 : False
OutputBufferingMode : Drop
IncludePortInSPN : False
Culture : en-US
UICulture : en-US
OpenTimeout : 180000
CancelTimeout : 60000
OperationTimeout : 180000
IdleTimeout : 172800000
PS> Disconnect-PSSession $s -IdleTimeoutSec 43200
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
4 ITTask Server01 Disconnected Microsoft.PowerShell None
PS> $s.Runspace.ConnectionInfo.IdleTimeout
43200000
Pierwsze polecenie używa polecenia cmdlet New-PSSessionOption do utworzenia obiektu opcji sesji. Używa parametru IdleTimeout , aby ustawić limit czasu bezczynności wynoszący 48 godzin (172800000 milisekund). Polecenie zapisuje obiekt opcji sesji w zmiennej $Timeout.
Drugie polecenie używa New-PSSession polecenia cmdlet do utworzenia sesji ITTask na komputerze Server01. Polecenie zapisuje sesję w zmiennej $s. Wartość parametru SessionOption to 48-godzinny limit czasu bezczynności w zmiennej $Timeout.
Trzecie polecenie rozłącza sesję ITTask w zmiennej $s. Polecenie kończy się niepowodzeniem, ponieważ wartość limitu czasu bezczynności sesji przekracza limit przydziału MaxIdleTimeoutMs w konfiguracji sesji. Ponieważ limit czasu bezczynności nie jest używany do momentu rozłączenia sesji, to naruszenie może nie być wykrywane podczas używania sesji.
Czwarte polecenie używa Invoke-Command polecenia cmdlet do uruchomienia Get-PSSessionConfiguration polecenia konfiguracji sesji Microsoft.PowerShell na komputerze Server01. Polecenie używa Format-List polecenia cmdlet w celu wyświetlenia wszystkich właściwości konfiguracji sesji na liście. Dane wyjściowe pokazują, że właściwość MaxIdleTimeoutMS , która określa maksymalną dozwoloną wartość IdleTimeout dla sesji korzystających z konfiguracji sesji, wynosi 43200000 milisekund (12 godzin).
Piąte polecenie pobiera wartości opcji sesji sesji w zmiennej $s. Wartości wielu opcji sesji są właściwościami właściwości ConnectionInfo właściwości Runspace sesji. Dane wyjściowe pokazują, że wartość właściwości IdleTimeout sesji wynosi 172800000 milisekund (48 godzin), co narusza limit przydziału MaxIdleTimeoutMs wynoszący 12 godzin w konfiguracji sesji. Aby rozwiązać ten konflikt, możesz użyć parametru ConfigurationName , aby wybrać inną konfigurację sesji lub użyć parametru IdleTimeout , aby skrócić limit czasu bezczynności sesji.
Szóste polecenie rozłącza sesję. Używa parametru IdleTimeoutSec, aby ustawić limit czasu bezczynności na maksymalną 12-godzinną.
Siódme polecenie pobiera wartość właściwości IdleTimeout rozłączonej sesji, która jest mierzona w milisekundach. Dane wyjściowe potwierdzają, że polecenie zakończyło się pomyślnie.
Parametry
-Confirm
Prosi o potwierdzenie przed uruchomieniem cmdletu.
Właściwości parametru
| Typ: | SwitchParameter |
| Domyślna wartość: | False |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
| Aliasy: | por |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-Id
Rozłącza się z sesjami przy użyciu określonego identyfikatora sesji. Wpisz co najmniej jeden identyfikator (oddzielony przecinkami) lub użyj operatora zakresu (..), aby określić zakres identyfikatorów.
Aby uzyskać identyfikator sesji, użyj polecenia cmdlet Get-PSSession. Identyfikator wystąpienia jest przechowywany we właściwości identyfikatora sesji.
Właściwości parametru
| Typ: | Int32[] |
| Domyślna wartość: | None |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
Id
| Position: | 1 |
| Obowiązkowe: | True |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | True |
| Wartość z pozostałych argumentów: | False |
-IdleTimeoutSec
Zmienia wartość limitu czasu bezczynności odłączonego PSSession. Wprowadź wartość w sekundach. Minimalna wartość to 60 (1 minuta).
Limit czasu bezczynności określa, jak długo odłączony program PSSession jest utrzymywany na komputerze zdalnym. Po upływie limitu czasu program PSSession zostanie usunięty.
Rozłączone PSSessions są uznawane za bezczynne od momentu rozłączenia, nawet jeśli polecenia są uruchomione w rozłączonej sesji.
Wartość domyślna limitu czasu bezczynności sesji jest ustawiana przez wartość IdleTimeoutMs właściwości konfiguracji sesji. Wartość domyślna to 72000000 milisekund (2 godziny).
Wartość tego parametru ma pierwszeństwo przed wartością właściwości IdleTimeout zmiennej preferencji $PSSessionOption i domyślną wartością limitu czasu bezczynności w konfiguracji sesji. Jednak ta wartość nie może przekroczyć wartości MaxIdleTimeoutMs właściwości konfiguracji sesji. Wartość domyślna MaxIdleTimeoutMs to 12 godzin (43200000 milisekund).
Właściwości parametru
| Typ: | Int32 |
| Domyślna wartość: | 60 |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-InstanceId
Rozłącza się z sesjami z określonymi identyfikatorami wystąpień.
Identyfikator wystąpienia to identyfikator GUID, który jednoznacznie identyfikuje sesję na komputerze lokalnym lub zdalnym. Identyfikator wystąpienia jest unikatowy, nawet w wielu sesjach na wielu komputerach.
Aby uzyskać identyfikator wystąpienia sesji, użyj polecenia cmdlet Get-PSSession. Identyfikator wystąpienia jest przechowywany we właściwości InstanceID sesji.
Właściwości parametru
| Typ: | Guid[] |
| Domyślna wartość: | None |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
InstanceId
| Position: | Named |
| Obowiązkowe: | True |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | True |
| Wartość z pozostałych argumentów: | False |
-Name
Rozłącza się z sesjami z określonymi przyjaznymi nazwami. Symbole wieloznaczne są dozwolone.
Aby uzyskać przyjazną nazwę sesji, użyj polecenia cmdlet Get-PSSession. Przyjazna nazwa jest przechowywana we właściwości Name sesji.
Właściwości parametru
| Typ: | String[] |
| Domyślna wartość: | None |
| Obsługuje symbole wieloznaczne: | True |
| DontShow: | False |
Zestawy parametrów
Name
| Position: | Named |
| Obowiązkowe: | True |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | True |
| Wartość z pozostałych argumentów: | False |
-OutputBufferingMode
Określa sposób zarządzania danymi wyjściowymi poleceń w rozłączonej sesji, gdy bufor wyjściowy jest pełny. Wartość domyślna to Blok.
Jeśli polecenie w rozłączonej sesji zwraca dane wyjściowe, a bufor wyjściowy wypełnia, wartość tego parametru skutecznie określa, czy polecenie będzie nadal uruchamiane podczas rozłączania sesji. Wartość Blokuj zawiesza polecenie do momentu ponownego nawiązania połączenia z sesją. Wartość Drop umożliwia wykonanie polecenia, chociaż dane mogą zostać utracone. W przypadku korzystania z wartości Drop przekieruj dane wyjściowe polecenia do pliku na dysku.
Prawidłowe wartości to:
- Blokuj: gdy bufor wyjściowy jest pełny, wykonanie jest zawieszone do momentu wyczyszczenia buforu.
- drop: gdy bufor wyjściowy jest pełny, wykonywanie będzie kontynuowane. W miarę zapisywania nowych danych wyjściowych najstarsze dane wyjściowe są odrzucane.
- Brak: nie określono trybu buforowania danych wyjściowych. Wartość właściwości OutputBufferingMode konfiguracji sesji jest używana dla rozłączonej sesji.
Właściwości parametru
| Typ: | OutputBufferingMode |
| Domyślna wartość: | Block |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-Session
Rozłącza się z określonymi sesjami PSS. Wprowadź obiekty PSSession, takie jak te, które są zwracane przez New-PSSession polecenie cmdlet. Można również potokować obiekt PSSession do Disconnect-PSSession.
Polecenie Get-PSSession cmdlet może pobrać wszystkie sesje PSSessions, które kończą się na komputerze zdalnym, w tym PSSessions, które są odłączone, i PSSessions połączone z innymi sesjami na innych komputerach.
Disconnect-PSSession rozłącza tylko program PSSession, który jest połączony z bieżącą sesją. Jeśli potokujesz inne PSSessions do Disconnect-PSSession, polecenie zakończy się niepowodzeniem Disconnect-PSSession .
Właściwości parametru
| Typ: | PSSession[] |
| Domyślna wartość: | None |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
Session
| Position: | 1 |
| Obowiązkowe: | True |
| Wartość z potoku: | True |
| Wartość z potoku według nazwy właściwości: | True |
| Wartość z pozostałych argumentów: | False |
-ThrottleLimit
Ustawia limit ograniczania dla polecenia Disconnect-PSSession.
Limit ograniczania jest maksymalną liczbą współbieżnych połączeń, które można ustanowić w celu uruchomienia tego polecenia. Jeśli pominiesz ten parametr lub wprowadź wartość 0, zostanie użyta wartość domyślna 32.
Limit ograniczania ma zastosowanie tylko do bieżącego polecenia, a nie do sesji ani do komputera.
Właściwości parametru
| Typ: | Int32 |
| Domyślna wartość: | 32 |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-WhatIf
Pokazuje, co się stanie, jeśli polecenie cmdlet zostanie uruchomione. Cmdlet nie jest uruchomiony.
Właściwości parametru
| Typ: | SwitchParameter |
| Domyślna wartość: | False |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
| Aliasy: | Wi |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
CommonParameters
To polecenie cmdlet obsługuje typowe parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction i -WarningVariable. Aby uzyskać więcej informacji, zobacz about_CommonParameters.
Dane wejściowe
PSSession
Sesję można potokować do Disconnect-PSSession.
Dane wyjściowe
PSSession
Disconnect-PSSession Zwraca obiekt reprezentujący sesję, która została rozłączona.
Uwagi
Polecenie cmdlet
Disconnect-PSSessiondziała tylko wtedy, gdy na komputerach lokalnych i zdalnych jest uruchomiony program PowerShell 3.0 lub nowszy.Jeśli używasz polecenia cmdlet
Disconnect-PSSessionw rozłączonej sesji, polecenie nie ma wpływu na sesję i nie generuje błędów.Rozłączone sesje sprzężenia zwrotnego z interaktywnymi tokenami zabezpieczającymi (utworzone przy użyciu parametru EnableNetworkAccess) można ponownie połączyć tylko z komputera, na którym została utworzona sesja. To ograniczenie chroni komputer przed złośliwym dostępem.
Po rozłączeniu sesji stan sesji jest Rozłączone, a dostępność jest Brak.
Wartość właściwości State jest relatywna względem aktualnej sesji. W związku z tym wartość Rozłączone oznacza, że sesja PSSession nie jest połączona z bieżącą sesją. Nie oznacza to jednak, że sesja PSSession jest odłączona od wszystkich sesji. Może być połączony z inną sesją. Aby określić, czy można nawiązać połączenie z sesją, czy ponownie nawiązać połączenie, użyj właściwości Availability.
Wartość AvailabilityNone wskazuje, że można nawiązać połączenie z sesją. Wartość Busy wskazuje, że nie można nawiązać połączenia z usługą PSSession, ponieważ jest ona połączona z inną sesją.
Aby uzyskać więcej informacji na temat wartości właściwości stanu
sesji, zobacz RunspaceState, wyliczenie .Aby uzyskać więcej informacji na temat wartości właściwości dostępności
sesji, zobacz RunspaceAvailability Enumeration .
Linki powiązane
- Connect-PSSession
- Enter-PSSession
- Exit-PSSession (zamknij sesję PowerShell)
- Get-PSSession
- Get-PSSessionConfiguration
- New-PSSession
- Opcja-NowejSesjiPS
- New-PSTransportOption
- Receive-PSSession
- Rejestracja konfiguracji sesji PowerShell (`Register-PSSessionConfiguration`)
- Remove-PSSession
- Informacje o PSSessions
- O zdalnym dostępie
- o_Zdalnie_Odłączonych_Sesjach