Get-PSSession
Pobiera sesje programu PowerShell na komputerach lokalnych i zdalnych.
Składnia
Get-PSSession
[-Name <String[]>]
[<CommonParameters>]
Get-PSSession
[-ComputerName] <String[]>
[-ApplicationName <String>]
[-ConfigurationName <String>]
[-Name <String[]>]
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[-Port <Int32>]
[-UseSSL]
[-ThrottleLimit <Int32>]
[-State <SessionFilterState>]
[-SessionOption <PSSessionOption>]
[<CommonParameters>]
Get-PSSession
[-ComputerName] <String[]>
[-ApplicationName <String>]
[-ConfigurationName <String>]
-InstanceId <Guid[]>
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[-Port <Int32>]
[-UseSSL]
[-ThrottleLimit <Int32>]
[-State <SessionFilterState>]
[-SessionOption <PSSessionOption>]
[<CommonParameters>]
Get-PSSession
[-ConnectionUri] <Uri[]>
[-ConfigurationName <String>]
[-AllowRedirection]
[-Name <String[]>]
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[-ThrottleLimit <Int32>]
[-State <SessionFilterState>]
[-SessionOption <PSSessionOption>]
[<CommonParameters>]
Get-PSSession
[-ConnectionUri] <Uri[]>
[-ConfigurationName <String>]
[-AllowRedirection]
-InstanceId <Guid[]>
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[-ThrottleLimit <Int32>]
[-State <SessionFilterState>]
[-SessionOption <PSSessionOption>]
[<CommonParameters>]
Get-PSSession
[-ConfigurationName <String>]
-InstanceId <Guid[]>
[-State <SessionFilterState>]
-VMName <String[]>
[<CommonParameters>]
Get-PSSession
[-ConfigurationName <String>]
[-Name <String[]>]
[-State <SessionFilterState>]
-ContainerId <String[]>
[<CommonParameters>]
Get-PSSession
[-ConfigurationName <String>]
-InstanceId <Guid[]>
[-State <SessionFilterState>]
-ContainerId <String[]>
[<CommonParameters>]
Get-PSSession
[-ConfigurationName <String>]
[-Name <String[]>]
[-State <SessionFilterState>]
-VMId <Guid[]>
[<CommonParameters>]
Get-PSSession
[-ConfigurationName <String>]
-InstanceId <Guid[]>
[-State <SessionFilterState>]
-VMId <Guid[]>
[<CommonParameters>]
Get-PSSession
[-ConfigurationName <String>]
[-Name <String[]>]
[-State <SessionFilterState>]
-VMName <String[]>
[<CommonParameters>]
Get-PSSession
[-InstanceId <Guid[]>]
[<CommonParameters>]
Get-PSSession
[-Id] <Int32[]>
[<CommonParameters>]
Opis
Polecenie Get-PSSession
cmdlet pobiera sesje programu PowerShell zarządzane przez użytkownika (PSSessions) na komputerach lokalnych i zdalnych.
Począwszy od Windows PowerShell 3.0, sesje są przechowywane na komputerach na zdalnym końcu każdego połączenia. Parametry ComputerName lub ConnectionUriGet-PSSession
można użyć, aby pobrać sesje łączące się z komputerem lokalnym lub komputerami zdalnymi, nawet jeśli nie zostały utworzone w bieżącej sesji.
Bez parametrów Get-PSSession
pobiera wszystkie sesje utworzone w bieżącej sesji.
Użyj parametrów filtrowania, w tym name, ID, InstanceID, State, ApplicationName i ConfigurationName, aby wybrać spośród zwracanych sesji.Get-PSSession
Użyj pozostałych parametrów, aby skonfigurować połączenie tymczasowe, w którym Get-PSSession
polecenie jest uruchamiane podczas używania parametrów ComputerName lub ConnectionUri .
Uwaga
W Windows PowerShell 2.0 bez parametrów Get-PSSession
pobiera wszystkie sesje utworzone w bieżącej sesji. Parametr ComputerName pobiera sesje utworzone w bieżącej sesji i nawiązuje połączenie z określonym komputerem.
Aby uzyskać więcej informacji na temat sesji programu PowerShell, zobacz about_PSSessions.
Przykłady
Przykład 1. Pobieranie sesji utworzonych w bieżącej sesji
Get-PSSession
To polecenie pobiera wszystkie pliki PSSession , które zostały utworzone w bieżącej sesji. Nie jest pobierana usługa PSSessions , które zostały utworzone w innych sesjach lub na innych komputerach, nawet jeśli nawiążą połączenie z tym komputerem.
Przykład 2. Pobieranie sesji połączonych z komputerem lokalnym
Get-PSSession -ComputerName "localhost"
To polecenie pobiera pliki PSSessions , które są połączone z komputerem lokalnym. Aby wskazać komputer lokalny, wpisz nazwę komputera, localhost lub kropkę (.
)
Polecenie zwraca wszystkie sesje na komputerze lokalnym, nawet jeśli zostały utworzone w różnych sesjach lub na różnych komputerach.
Przykład 3. Uzyskiwanie sesji połączonych z komputerem
Get-PSSession -ComputerName "Server02"
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
2 Session3 Server02 Disconnected ITTasks Busy
1 ScheduledJobs Server02 Opened Microsoft.PowerShell Available
3 Test Server02 Disconnected Microsoft.PowerShell Busy
To polecenie pobiera pliki PSSessions połączone z komputerem Server02.
Polecenie zwraca wszystkie sesje na serwerze Server02, nawet jeśli zostały utworzone w różnych sesjach lub na różnych komputerach.
Dane wyjściowe pokazują, że dwie sesje mają Disconnected
stan i Busy
dostępność.
Zostały one utworzone w różnych sesjach i są obecnie używane. SesjaScheduledJobs
, która jest i Available
Opened
, została utworzona w bieżącej sesji.
Przykład 4. Zapisz wyniki tego polecenia
New-PSSession -ComputerName Server01, Server02, Server03
$s1, $s2, $s3 = Get-PSSession
W tym przykładzie pokazano, jak zapisać wyniki Get-PSSession
polecenia w wielu zmiennych.
Pierwsze polecenie używa New-PSSession
polecenia cmdlet do tworzenia serwerów PSSessions na trzech komputerach zdalnych.
Drugie polecenie używa Get-PSSession
polecenia cmdlet do pobrania trzech psSessions. Następnie zapisuje każdy z psSessions w oddzielnej zmiennej.
Gdy program PowerShell przypisuje tablicę obiektów do tablicy zmiennych, przypisuje pierwszy obiekt do pierwszej zmiennej, drugi obiekt do drugiej zmiennej itd. Jeśli istnieje więcej obiektów niż zmienne, przypisuje wszystkie pozostałe obiekty do ostatniej zmiennej w tablicy. Jeśli istnieje więcej zmiennych niż obiekty, dodatkowe zmienne nie są używane.
Przykład 5. Usuwanie sesji przy użyciu identyfikatora wystąpienia
Get-PSSession | Format-Table -Property ComputerName, InstanceID
$s = Get-PSSession -InstanceID a786be29-a6bb-40da-80fb-782c67f7db0f
Remove-PSSession -Session $s
W tym przykładzie pokazano, jak uzyskać usługę PSSession przy użyciu identyfikatora wystąpienia, a następnie usunąć usługę PSSession.
Pierwsze polecenie pobiera wszystkie pliki PSSession , które zostały utworzone w bieżącej sesji. Wysyła on pliki PSSessions do Format-Table
polecenia cmdlet, które wyświetla właściwości ComputerName i InstanceID każdej usługi PSSession.
Drugie polecenie używa Get-PSSession
polecenia cmdlet do pobrania określonego programu PSSession i zapisania go w zmiennej $s
. Polecenie używa parametru InstanceID , aby zidentyfikować usługę PSSession.
Trzecie polecenie używa polecenia cmdlet Remove-PSSession do usunięcia psSession w zmiennej $s
.
Przykład 6. Pobieranie sesji o określonej nazwie
Polecenia w tym przykładzie znajdują sesję, która ma określony format nazwy i używa określonej konfiguracji sesji, a następnie nawiąż połączenie z sesją. Możesz użyć polecenia takiego jak ten, aby znaleźć sesję, w której współpracownik rozpoczął zadanie i nawiązał połączenie, aby zakończyć zadanie.
Get-PSSession -ComputerName Server02, Server12 -Name BackupJob* -ConfigurationName ITTasks -SessionOption @{OperationTimeout=240000}
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
3 BackupJob04 Server02 Disconnected ITTasks None
$s = Get-PSSession -ComputerName Server02 -Name BackupJob04 -ConfigurationName ITTasks | Connect-PSSession
$s
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
5 BackupJob04 Server02 Opened ITTasks Available
Pierwsze polecenie pobiera sesje na komputerach zdalnych Server02 i Server12, które mają nazwy rozpoczynające się BackupJob
i używają ITTasks
konfiguracji sesji. Polecenie używa parametru Name , aby określić wzorzec nazwy i parametr ConfigurationName w celu określenia konfiguracji sesji. Wartość parametru SessionOption to tabela skrótu, która ustawia wartość parametru OperationTimeout na 240000
milisekundy (4 minuty). To ustawienie zapewnia więcej czasu na ukończenie polecenia. Parametry ConfigurationName i SessionOption służą do konfigurowania sesji tymczasowych, w których Get-PSSession
polecenie cmdlet jest uruchamiane na każdym komputerze. Dane wyjściowe pokazują, że polecenie zwraca sesję BackupJob04
. Sesja jest rozłączona, a wartość Dostępność to None
, co wskazuje, że nie jest używana.
Drugie polecenie używa Get-PSSession
polecenia cmdlet do pobrania do BackupJob04
sesji i Connect-PSSession
polecenia cmdlet w celu nawiązania połączenia z sesją. Polecenie zapisuje sesję w zmiennej $s
.
Trzecie polecenie pobiera sesję w zmiennej $s
. Dane wyjściowe pokazują, że Connect-PSSession
polecenie zakończyło się pomyślnie. Sesja jest w stanie Otwarty i jest dostępna do użycia.
Przykład 7. Uzyskiwanie sesji przy użyciu identyfikatora
Get-PSSession -Id 2
To polecenie pobiera plik PSSession o identyfikatorze 2
. Ponieważ wartość właściwości ID jest unikatowa tylko w bieżącej sesji, parametr Id jest prawidłowy tylko dla poleceń lokalnych.
Parametry
-AllowRedirection
Wskazuje, że to polecenie cmdlet zezwala na przekierowywanie tego połączenia do alternatywnego identyfikatora URI (Uniform Resource Identifier). Domyślnie program PowerShell nie przekierowuje połączeń.
Ten parametr konfiguruje połączenie tymczasowe utworzone w celu uruchomienia Get-PSSession
polecenia za pomocą parametru ConnectionUri .
Ten parametr został wprowadzony w Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ApplicationName
Określa nazwę aplikacji. To polecenie cmdlet łączy się tylko z sesjami korzystającymi z określonej aplikacji.
Wprowadź segment nazwy aplikacji identyfikatora URI połączenia. Na przykład w następującym identyfikatorze URI połączenia nazwa aplikacji to WSMan: http://localhost:5985/WSMAN
. Nazwa aplikacji sesji jest przechowywana we właściwości Runspace.ConnectionInfo.AppName sesji.
Wartość tego parametru służy do wybierania i filtrowania sesji. Nie zmienia aplikacji używanej przez sesję.
Type: | String |
Position: | Named |
Default value: | All sessions |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Authentication
Określa mechanizm używany do uwierzytelniania poświadczeń dla sesji, w której Get-PSSession
jest uruchamiane polecenie.
Ten parametr konfiguruje połączenie tymczasowe utworzone w celu uruchomienia Get-PSSession
polecenia za pomocą parametru ComputerName lub ConnectionUri .
Dopuszczalne wartości dla tego parametru to:
Default
Basic
CredSSP
Digest
Kerberos
Negotiate
NegotiateWithImplicitCredential
.
Wartość domyślna to Default
.
Aby uzyskać więcej informacji na temat wartości tego parametru, zobacz AuthenticationMechanism Enumeration (Wyliczenie AuthenticationMechanism).
Przestroga
Uwierzytelnianie dostawcy obsługi zabezpieczeń poświadczeń (CredSSP), w którym poświadczenia użytkownika są przekazywane do komputera zdalnego do uwierzytelnienia, jest przeznaczone do poleceń wymagających uwierzytelniania w więcej niż jednym zasobie, na przykład uzyskiwania dostępu do udziału sieci zdalnej. Ten mechanizm zwiększa ryzyko bezpieczeństwa operacji zdalnej. Jeśli bezpieczeństwo komputera zdalnego zostanie naruszone, poświadczenia przekazane do niego mogą służyć do kontrolowania sesji sieciowej.
Ten parametr został wprowadzony w Windows PowerShell 3.0.
Type: | AuthenticationMechanism |
Accepted values: | Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos |
Position: | Named |
Default value: | Default |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CertificateThumbprint
Określa cyfrowy certyfikat klucza publicznego (X509) konta użytkownika z uprawnieniami do tworzenia sesji, w której Get-PSSession
jest uruchamiane polecenie. Wprowadź odcisk palca certyfikatu certyfikatu.
Ten parametr konfiguruje połączenie tymczasowe utworzone w celu uruchomienia Get-PSSession
polecenia za pomocą parametru ComputerName lub ConnectionUri .
Certyfikaty są używane w uwierzytelnianiu opartym na certyfikatach klienta. Mogą być mapowane tylko na konta użytkowników lokalnych; nie działają z kontami domeny.
Aby uzyskać odcisk palca certyfikatu, użyj polecenia Get-Item
lub Get-ChildItem
na dysku programu PowerShell Cert:
.
Ten parametr został wprowadzony w Windows PowerShell 3.0.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ComputerName
Określa tablicę nazw komputerów. Pobiera sesje łączące się z określonymi komputerami. Symbole wieloznaczne nie są dozwolone. Nie ma żadnej wartości domyślnej.
Począwszy od Windows PowerShell 3.0, obiekty PSSession są przechowywane na komputerach na zdalnym końcu każdego połączenia. Aby pobrać sesje na określonych komputerach, program PowerShell tworzy tymczasowe połączenie z każdym komputerem i uruchamia Get-PSSession
polecenie.
Wpisz nazwę NetBIOS, adres IP lub w pełni kwalifikowaną nazwę domeny jednego lub kilku komputerów. Aby określić komputer lokalny, wpisz nazwę komputera, localhost
lub kropkę (.
).
Uwaga
Ten parametr pobiera sesje tylko z komputerów z systemem Windows PowerShell 3.0 lub nowszym wersją programu PowerShell. Wcześniejsze wersje nie przechowują sesji.
Type: | String[] |
Aliases: | Cn |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ConfigurationName
Określa nazwę konfiguracji. To polecenie cmdlet pobiera tylko do sesji korzystających z określonej konfiguracji sesji.
Wprowadź nazwę konfiguracji lub w pełni kwalifikowany identyfikator URI zasobu dla konfiguracji sesji. Jeśli określisz tylko nazwę konfiguracji, następujący identyfikator URI schematu jest wstępnie utworzony: http://schemas.microsoft.com/powershell
. Nazwa konfiguracji sesji jest przechowywana we właściwości ConfigurationName sesji.
Wartość tego parametru służy do wybierania i filtrowania sesji. Nie zmienia konfiguracji sesji używanej przez sesję.
Aby uzyskać więcej informacji na temat konfiguracji sesji, zobacz Informacje o konfiguracjach sesji.
Type: | String |
Position: | Named |
Default value: | All sessions |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ConnectionUri
Określa identyfikator URI, który definiuje punkt końcowy połączenia dla sesji tymczasowej, w której Get-PSSession
jest uruchamiane polecenie. Identyfikator URI musi być w pełni kwalifikowany.
Ten parametr konfiguruje połączenie tymczasowe utworzone w celu uruchomienia Get-PSSession
polecenia za pomocą parametru ConnectionUri .
Format tego ciągu to:
<Transport>://<ComputerName>:<Port\>/<ApplicationName>
Wartość domyślna to: http://localhost:5985/WSMAN
.
Jeśli nie określisz identyfikatora ConnectionUri, możesz użyć parametrów UseSSL, ComputerName, Port i ApplicationName , aby określić wartości identyfikatora ConnectionURI . Prawidłowe wartości segmentu Transport identyfikatora URI to HTTP i HTTPS. Jeśli określisz identyfikator URI połączenia z segmentem Transport, ale nie określisz portu, sesja zostanie utworzona przy użyciu portów standardów: 80
dla protokołu HTTP i 443
protokołu HTTPS. Aby użyć domyślnych portów komunikacji zdalnej programu PowerShell, określ port 5985
protokołu HTTP lub 5986
HTTPS.
Jeśli komputer docelowy przekierowuje połączenie z innym identyfikatorem URI, program PowerShell uniemożliwia przekierowanie, chyba że użyjesz parametru AllowRedirection w poleceniu .
Ten parametr został wprowadzony w Windows PowerShell 3.0.
Ten parametr pobiera sesje tylko z komputerów z systemem Windows PowerShell 3.0 lub nowszych wersji Windows PowerShell. Wcześniejsze wersje nie przechowują sesji.
Type: | Uri[] |
Aliases: | URI, CU |
Position: | 0 |
Default value: | Http://localhost:5985/WSMAN |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ContainerId
Określa tablicę identyfikatorów kontenerów. To polecenie cmdlet uruchamia sesję interaktywną z każdym z określonych kontenerów. Użyj polecenia , docker ps
aby uzyskać listę identyfikatorów kontenerów. Aby uzyskać więcej informacji, zobacz pomoc dotyczącą polecenia docker ps .
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Credential
Określa poświadczenia użytkownika. To polecenie cmdlet uruchamia polecenie z uprawnieniami określonego użytkownika. Określ konto użytkownika, które ma uprawnienia do nawiązywania połączenia z komputerem zdalnym Get-PSSession
i uruchom polecenie. Wartość domyślna to użytkownik bieżący.
Wpisz nazwę użytkownika, taką jak User01
lub Domain01\User01
, lub wprowadź obiekt PSCredential wygenerowany przez Get-Credential
polecenie cmdlet. Jeśli wpiszesz nazwę użytkownika, zostanie wyświetlony monit o wprowadzenie hasła.
Poświadczenia są przechowywane w obiekcie PSCredential , a hasło jest przechowywane jako secureString.
Uwaga
Aby uzyskać więcej informacji na temat ochrony danych secureString , zobacz Jak bezpieczny jest protokół SecureString?.
Ten parametr umożliwia skonfigurowanie połączenia tymczasowego utworzonego w celu uruchomienia Get-PSSession
polecenia za pomocą parametru ComputerName lub ConnectionUri .
Ten parametr został wprowadzony w Windows PowerShell 3.0.
Type: | PSCredential |
Position: | Named |
Default value: | Current user |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Id
Określa tablicę identyfikatorów sesji. To polecenie cmdlet pobiera tylko sesje z określonymi identyfikatorami. Wpisz co najmniej jeden identyfikator rozdzielony przecinkami lub użyj operatora zakresu (..
), aby określić zakres identyfikatorów.
Nie można użyć parametru ID razem z parametrem ComputerName .
Identyfikator to liczba całkowita, która jednoznacznie identyfikuje sesje zarządzane przez użytkownika w bieżącej sesji. Łatwiej jest zapamiętać i wpisać identyfikator InstanceId, ale jest on unikatowy tylko w ramach bieżącej sesji. Identyfikator sesji jest przechowywany we właściwości ID sesji.
Type: | Int32[] |
Position: | 0 |
Default value: | All sessions |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-InstanceId
Określa tablicę identyfikatorów wystąpień sesji. To polecenie cmdlet pobiera tylko sesje z określonymi identyfikatorami wystąpień.
Identyfikator wystąpienia to identyfikator GUID, który jednoznacznie identyfikuje sesję na komputerze lokalnym lub zdalnym. Identyfikator instanceID jest unikatowy, nawet jeśli masz wiele sesji uruchomionych w programie PowerShell.
Identyfikator wystąpienia sesji jest przechowywany we właściwości InstanceID sesji.
Type: | Guid[] |
Position: | Named |
Default value: | All sessions |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Określa tablicę nazw sesji. To polecenie cmdlet pobiera tylko sesje, które mają określone przyjazne nazwy. Dozwolone są symbole wieloznaczne.
Przyjazna nazwa sesji jest przechowywana we właściwości Name sesji.
Type: | String[] |
Position: | Named |
Default value: | All sessions |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-Port
Określa określony port sieciowy używany do połączenia tymczasowego, w którym Get-PSSession
jest uruchamiane polecenie. Aby nawiązać połączenie z komputerem zdalnym, komputer zdalny musi nasłuchiwać na porcie używanym przez połączenie. Domyślne porty to 5985
, czyli port usługi WinRM dla protokołu HTTP i 5986
, który jest portem Usługi WinRM dla protokołu HTTPS.
Przed użyciem portu alternatywnego należy skonfigurować odbiornik Usługi WinRM na komputerze zdalnym do nasłuchiwania na tym porcie. Aby skonfigurować odbiornik, wpisz następujące dwa polecenia w wierszu polecenia programu PowerShell:
Remove-Item -Path WSMan:\Localhost\listener\listener* -Recurse
New-Item -Path WSMan:\Localhost\listener -Transport http -Address * -Port \<port-number\>
Ten parametr umożliwia skonfigurowanie połączenia tymczasowego utworzonego w celu uruchomienia Get-PSSession
polecenia za pomocą parametru ComputerName lub ConnectionUri .
Nie używaj parametru Port , chyba że musisz. Port ustawiony w poleceniu dotyczy wszystkich komputerów lub sesji, na których jest uruchamiane polecenie. Ustawienie alternatywnego portu może uniemożliwić uruchomienie polecenia na wszystkich komputerach.
Ten parametr został wprowadzony w Windows PowerShell 3.0.
Type: | Int32 |
Position: | Named |
Default value: | 5985, 5986 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SessionOption
Określa opcje zaawansowane dla sesji. Wprowadź obiekt SessionOption , taki jak obiekt utworzony za pomocą New-PSSessionOption
polecenia cmdlet lub tabela skrótu, w której klucze są nazwami opcji sesji, a wartości to wartości opcji sesji.
Wartości domyślne opcji są określane przez wartość zmiennej $PSSessionOption
preferencji, jeśli jest ustawiona. W przeciwnym razie wartości domyślne są ustanawiane przez opcje ustawione w konfiguracji sesji.
Wartości opcji sesji mają pierwszeństwo przed wartościami domyślnymi sesji ustawionymi w zmiennej $PSSessionOption
preferencji i w konfiguracji sesji. Nie mają jednak pierwszeństwa przed maksymalnymi wartościami, limitami przydziału lub limitami ustawionymi w konfiguracji sesji.
Aby uzyskać opis opcji sesji, w tym wartości domyślne, zobacz New-PSSessionOption
.
Aby uzyskać informacje o zmiennej $PSSessionOption
preferencji, zobacz about_Preference_Variables. Aby uzyskać więcej informacji na temat konfiguracji sesji, zobacz Informacje o konfiguracjach sesji.
Type: | PSSessionOption |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-State
Określa stan sesji. To polecenie cmdlet pobiera tylko sesje w określonym stanie. Dopuszczalne wartości tego parametru to: All
, , Opened
Disconnected
, Closed
, i Broken
. Wartość domyślna to All
.
Wartość stanu sesji jest względna względem bieżących sesji. Sesje, które nie zostały utworzone w bieżących sesjach i nie są połączone z bieżącą sesją, mają stan Disconnected
nawet wtedy, gdy są połączone z inną sesją.
Stan sesji jest przechowywany we właściwości State sesji.
Ten parametr został wprowadzony w Windows PowerShell 3.0.
Type: | SessionFilterState |
Accepted values: | All, Opened, Disconnected, Closed, Broken |
Position: | Named |
Default value: | All |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ThrottleLimit
Określa maksymalną liczbę połączeń współbieżnych, które można ustanowić w celu uruchomienia Get-PSSession
polecenia. Jeśli pominiesz ten parametr lub wprowadzisz wartość 0
(zero), zostanie użyta wartość domyślna , 32
. Limit ograniczania dotyczy tylko bieżącego polecenia, a nie sesji lub komputera.
Ten parametr został wprowadzony w Windows PowerShell 3.0.
Type: | Int32 |
Position: | Named |
Default value: | 32 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UseSSL
Wskazuje, że to polecenie cmdlet używa protokołu Secure Sockets Layer (SSL) do ustanowienia połączenia, w którym Get-PSSession
jest uruchamiane polecenie. Domyślnie nie jest używane szyfrowanie SSL. Jeśli używasz tego parametru, ale protokół SSL nie jest dostępny na porcie używanym dla polecenia, polecenie zakończy się niepowodzeniem.
Ten parametr konfiguruje tymczasowe połączenie, które jest tworzone w celu uruchomienia Get-PSSession
polecenia za pomocą parametru ComputerName .
Ten parametr został wprowadzony w Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VMId
Określa tablicę identyfikatorów maszyn wirtualnych. To polecenie cmdlet uruchamia interaktywną sesję z każdą z określonych maszyn wirtualnych. Aby wyświetlić dostępne maszyny wirtualne, użyj następującego polecenia:
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
Określa tablicę nazw maszyn wirtualnych. To polecenie cmdlet uruchamia interaktywną sesję z każdą z określonych maszyn wirtualnych. Aby wyświetlić dostępne maszyny wirtualne, użyj Get-VM
polecenia cmdlet .
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Dane wejściowe
None
Nie można potokować obiektów do tego polecenia cmdlet.
Dane wyjściowe
Uwagi
Program PowerShell zawiera następujące aliasy dla Get-PSSession
programu :
Wszystkie platformy:
gsn
To polecenie cmdlet pobiera obiekty PSSession zarządzane przez użytkownika, takie jak te, które są tworzone przy użyciu
New-PSSession
poleceń cmdlet ,Enter-PSSession
iInvoke-Command
. Nie pobiera sesji zarządzanej przez system utworzonej podczas uruchamiania programu PowerShell.Począwszy od Windows PowerShell 3.0, obiekty PSSession są przechowywane na komputerze, który znajduje się po stronie serwera lub odbiera na końcu połączenia. Aby uzyskać sesje przechowywane na komputerze lokalnym lub komputerze zdalnym, program PowerShell ustanawia sesję tymczasową na określonym komputerze i uruchamia polecenia zapytania w sesji.
Aby uzyskać sesje łączące się z komputerem zdalnym, użyj parametrów ComputerName lub ConnectionUri , aby określić komputer zdalny. Aby filtrować sesje,
Get-PSSession
użyj parametrów Name, ID, InstanceID i State . Użyj pozostałych parametrów, aby skonfigurować sesję tymczasową, któraGet-PSSession
używa.W przypadku korzystania z parametrów
Get-PSSession
ComputerName lub ConnectionUri pobiera tylko sesje z komputerów z systemem Windows PowerShell 3.0 i nowszych wersjach programu PowerShell.Wartość właściwości State elementu PSSession jest względna względem bieżącej sesji. W związku z tym wartość Rozłączone oznacza, że usługa 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żesz nawiązać połączenie z usługą PSSession z bieżącej sesji, użyj właściwości Availability .
Wartość Availability (Brak) wskazuje, że można nawiązać połączenie z sesją. Wartość Zajęta wskazuje, że nie można nawiązać połączenia z usługą PSSession , ponieważ jest połączona z inną sesją.
Aby uzyskać więcej informacji na temat wartości właściwości State sesji, zobacz RunspaceState, wyliczenie.
Aby uzyskać więcej informacji na temat wartości właściwości Availability sesji, zobacz RunspaceAvailability, wyliczenie.