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 cmdlet Get-PSSession
pobiera sesje programu PowerShell zarządzane przez użytkownika (PSSessions) na komputerach lokalnych i zdalnych.
Począwszy od programu Windows PowerShell 3.0, sesje są przechowywane na komputerach na zdalnym końcu każdego połączenia. Można użyć ComputerName lub ConnectionUri parametrówGet-PSSession
, aby uzyskać 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 Nazwa, identyfikator id, InstanceID, state, ApplicationNamei ConfigurationName wybrać spośród sesji, które Get-PSSession
zwraca.
Użyj pozostałych parametrów, aby skonfigurować tymczasowe połączenie, w którym polecenie Get-PSSession
jest uruchamiane podczas korzystania z parametrów ComputerName lub ConnectionUri.
Nuta
W programie Windows PowerShell 2.0 bez parametrów Get-PSSession
pobiera wszystkie sesje utworzone w bieżącej sesji. Parametr ComputerName pobiera sesje, które zostały utworzone w bieżącej sesji i łączą się 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 PSSessions, które zostały utworzone w bieżącej sesji. Nie uzyskuje pssessions, które zostały utworzone w innych sesjach lub na innych komputerach, nawet jeśli łączą się z tym komputerem.
Przykład 2. Uzyskiwanie sesji połączonych z komputerem lokalnym
Get-PSSession -ComputerName "localhost"
To polecenie pobiera 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 PSSessions, które są 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ą stan Disconnected
i dostępność Busy
.
Zostały one utworzone w różnych sesjach i są obecnie używane. Sesja ScheduledJobs
, która jest Opened
i Available
, 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 polecenia Get-PSSession
w wielu zmiennych.
Pierwsze polecenie używa polecenia cmdlet New-PSSession
do utworzenia PSSessions na trzech komputerach zdalnych.
Drugie polecenie używa polecenia cmdlet Get-PSSession
, aby pobrać trzy PSSessions. Następnie zapisuje każdą 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ć PSSession przy użyciu identyfikatora wystąpienia, a następnie usunąć PSSession .
Pierwsze polecenie pobiera wszystkie PSSessions, które zostały utworzone w bieżącej sesji. Wysyła on PSSessions do polecenia cmdlet Format-Table
, które wyświetla ComputerName i InstanceID właściwości każdego PSSession.
Drugie polecenie używa polecenia cmdlet Get-PSSession
, aby uzyskać określony PSSession i zapisać go w zmiennej $s
. Polecenie używa parametru instanceID, aby zidentyfikować 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ę od BackupJob
i używają konfiguracji sesji ITTasks
. Polecenie używa parametru Name, aby określić wzorzec nazwy i parametr ConfigurationName w celu określenia konfiguracji sesji. Wartość parametru SessionOption jest tabelą skrótów, która ustawia wartość OperationTimeout na 240000
milisekund (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 polecenie cmdlet Get-PSSession
jest uruchamiane na każdym komputerze. Dane wyjściowe pokazują, że polecenie zwraca sesję BackupJob04
. Sesja jest rozłączona, a dostępności jest None
, co wskazuje, że nie jest używana.
Drugie polecenie używa polecenia cmdlet Get-PSSession
, aby przejść do sesji BackupJob04
i polecenia cmdlet Connect-PSSession
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 polecenie Connect-PSSession
zakończyło się pomyślnie. Sesja jest w stanie Otwarte i jest dostępna do użycia.
Przykład 7. Uzyskiwanie sesji przy użyciu jego identyfikatora
Get-PSSession -Id 2
To polecenie pobiera PSSession z identyfikatorem 2
. Ponieważ wartość właściwości identyfikatora jest unikatowa tylko w bieżącej sesji, parametr Id jest prawidłowy tylko w przypadku poleceń lokalnych.
Parametry
-AllowRedirection
Wskazuje, że to polecenie cmdlet umożliwia przekierowanie tego połączenia do alternatywnego identyfikatora URI (Uniform Resource Identifier). Domyślnie program PowerShell nie przekierowuje połączeń.
Ten parametr konfiguruje tymczasowe połączenie, które jest tworzone w celu uruchomienia polecenia Get-PSSession
za pomocą parametru ConnectionUri.
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | False |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | 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ę.
Typ: | String |
Position: | Named |
Domyślna wartość: | All sessions |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-Authentication
Określa mechanizm używany do uwierzytelniania poświadczeń dla sesji, w której jest uruchamiane polecenie Get-PSSession
.
Ten parametr konfiguruje tymczasowe połączenie, które jest tworzone w celu uruchomienia polecenia Get-PSSession
za pomocą parametru ComputerName lub ConnectionUri.
Dopuszczalne wartości 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.
Ostrożność
Uwierzytelnianie dostawcy obsługi zabezpieczeń poświadczeń (CredSSP), w którym poświadczenia użytkownika są przekazywane do komputera zdalnego do uwierzytelnienia, jest przeznaczone dla poleceń wymagających uwierzytelniania w więcej niż jednym zasobie, takich jak uzyskiwanie dostępu do zdalnego udziału sieciowego. Ten mechanizm zwiększa ryzyko bezpieczeństwa operacji zdalnej. W przypadku naruszenia zabezpieczeń komputera zdalnego poświadczenia przekazywane do niego mogą służyć do kontrolowania sesji sieciowej.
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Typ: | AuthenticationMechanism |
Dopuszczalne wartości: | Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos |
Position: | Named |
Domyślna wartość: | Default |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-CertificateThumbprint
Określa cyfrowy certyfikat klucza publicznego (X509) konta użytkownika z uprawnieniami do tworzenia sesji, w której jest uruchamiane polecenie Get-PSSession
. Wprowadź odcisk palca certyfikatu.
Ten parametr konfiguruje tymczasowe połączenie, które jest tworzone w celu uruchomienia polecenia Get-PSSession
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 Cert:
programu PowerShell.
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-ComputerName
Określa tablicę nazw komputerów. Pobiera sesje łączące się z określonymi komputerami. Symbole wieloznaczne nie są dozwolone. Nie ma wartości domyślnej.
Począwszy od programu 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 polecenie Get-PSSession
.
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ę (.
).
Nuta
Ten parametr pobiera sesje tylko z komputerów z programem Windows PowerShell w wersji 3.0 lub nowszej programu PowerShell. Wcześniejsze wersje nie przechowują sesji.
Typ: | String[] |
Aliasy: | Cn |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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 poprzedzany: 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 about_Session_Configurations.
Typ: | String |
Position: | Named |
Domyślna wartość: | All sessions |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-ConnectionUri
Określa identyfikator URI definiujący punkt końcowy połączenia dla sesji tymczasowej, w której jest uruchamiane polecenie Get-PSSession
. Identyfikator URI musi być w pełni kwalifikowany.
Ten parametr konfiguruje tymczasowe połączenie, które jest tworzone w celu uruchomienia polecenia Get-PSSession
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, Porti parametrów ApplicationName w celu określenia 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
dla protokołu HTTPS. Aby użyć domyślnych portów komunikacji zdalnej programu PowerShell, określ port 5985
dla protokołu HTTP lub 5986
dla protokołu HTTPS.
Jeśli komputer docelowy przekierowuje połączenie do innego identyfikatora URI, program PowerShell uniemożliwia przekierowanie, chyba że użyjesz parametru AllowRedirection w poleceniu .
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Ten parametr pobiera sesje tylko z komputerów z programem Windows PowerShell w wersji 3.0 lub nowszej programu Windows PowerShell. Wcześniejsze wersje nie przechowują sesji.
Typ: | Uri[] |
Aliasy: | URI, CU |
Position: | 0 |
Domyślna wartość: | Http://localhost:5985/WSMAN |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-ContainerId
Określa tablicę identyfikatorów kontenerów. To polecenie cmdlet rozpoczyna interakcyjną sesję 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.
Typ: | String[] |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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 i uruchom Get-PSSession
polecenie. Wartość domyślna to bieżący użytkownik.
Wpisz nazwę użytkownika, taką jak User01
lub Domain01\User01
, lub wprowadź obiekt PSCredential wygenerowany przez polecenie cmdlet Get-Credential
. 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.
Nuta
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 polecenia Get-PSSession
za pomocą parametru ComputerName lub parametru ConnectionUri.
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Typ: | PSCredential |
Position: | Named |
Domyślna wartość: | Current user |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Id
Określa tablicę identyfikatorów sesji. To polecenie cmdlet pobiera tylko sesje z określonymi identyfikatorami. Wpisz co najmniej jeden identyfikator, oddzielony 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ć niż InstanceId, ale jest on unikatowy tylko w bieżącej sesji. Identyfikator sesji jest przechowywany we właściwości ID sesji.
Typ: | Int32[] |
Position: | 0 |
Domyślna wartość: | All sessions |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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. InstanceID jest unikatowa, nawet jeśli masz wiele sesji uruchomionych w programie PowerShell.
Identyfikator wystąpienia sesji jest przechowywany we właściwości InstanceID sesji.
Typ: | Guid[] |
Position: | Named |
Domyślna wartość: | All sessions |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | 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.
Typ: | String[] |
Position: | Named |
Domyślna wartość: | All sessions |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | True |
-Port
Określa określony port sieciowy używany do połączenia tymczasowego, w którym jest uruchamiane polecenie Get-PSSession
. 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 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 polecenia Get-PSSession
za pomocą parametru ComputerName lub parametru ConnectionUri.
Nie używaj parametru portów, 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 programie Windows PowerShell 3.0.
Typ: | Int32 |
Position: | Named |
Domyślna wartość: | 5985, 5986 |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-SessionOption
Określa opcje zaawansowane dla sesji. Wprowadź obiekt SessionOption, taki jak obiekt utworzony przy użyciu polecenia cmdlet New-PSSessionOption
lub tabela skrótu, w której klucze są nazwami opcji sesji, a wartości są wartościami opcji sesji.
Wartości domyślne opcji są określane przez wartość zmiennej preferencji $PSSessionOption
, 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 preferencji $PSSessionOption
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 preferencji $PSSessionOption
, zobacz about_Preference_Variables. Aby uzyskać więcej informacji na temat konfiguracji sesji, zobacz about_Session_Configurations.
Typ: | PSSessionOption |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | 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 programie Windows PowerShell 3.0.
Typ: | SessionFilterState |
Dopuszczalne wartości: | All, Opened, Disconnected, Closed, Broken |
Position: | Named |
Domyślna wartość: | All |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-ThrottleLimit
Określa maksymalną liczbę współbieżnych połączeń, które można ustanowić, aby uruchomić Get-PSSession
polecenia. Jeśli pominiesz ten parametr lub wprowadzisz wartość 0
(zero), zostanie użyta wartość domyślna 32
. Limit ograniczania ma zastosowanie tylko do bieżącego polecenia, a nie do sesji ani do komputera.
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Typ: | Int32 |
Position: | Named |
Domyślna wartość: | 32 |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-UseSSL
Wskazuje, że to polecenie cmdlet używa protokołu Secure Sockets Layer (SSL) do ustanowienia połączenia, w którym jest uruchamiane polecenie Get-PSSession
. Domyślnie protokół SSL nie jest używany. 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 polecenia Get-PSSession
za pomocą parametru ComputerName.
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | False |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | 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
Typ: | Guid[] |
Aliasy: | VMGuid |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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 polecenia cmdlet Get-VM
.
Typ: | String[] |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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
:
Wszystkie platformy:
gsn
To polecenie cmdlet pobiera sesje zarządzane przez użytkownika obiektów pssession", takie jak te, które są tworzone przy użyciu poleceń cmdlet
New-PSSession
,Enter-PSSession
iInvoke-Command
. Nie pobiera sesji zarządzanej przez system utworzonej podczas uruchamiania programu PowerShell.Począwszy od programu 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ą dla określonego komputera 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, które są
Get-PSSession
pobierane, użyj parametrów Name, ID, InstanceIDi State. Użyj pozostałych parametrów, aby skonfigurować sesję tymczasową, któraGet-PSSession
używa.Jeśli używasz parametrów ComputerName lub ConnectionUri,
Get-PSSession
pobiera tylko sesje z komputerów z programem Windows PowerShell 3.0 lub nowszymi wersjami programu PowerShell.Wartość właściwości stanu jest względna dla bieżącej sesji. W związku z tym wartość Rozłączone oznacza, że PSSession nie jest połączona z bieżącą sesją. Nie oznacza to jednak, że PSSession jest odłączony od wszystkich sesji. Może być połączony z inną sesją. Aby określić, czy można nawiązać połączenie z PSSession, czy ponownie nawiązać połączenie, użyj właściwości dostępności.
Wartość AvailabilityNone wskazuje, że można nawiązać połączenie z sesją. Wartość Busy wskazuje, że nie można nawiązać połączenia z 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.