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]
-InstanceId <Guid[]>
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[-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
[-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
[-ConfigurationName <String>]
-InstanceId <Guid[]>
[-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 programu Windows PowerShell 3.0, sesje są przechowywane na komputerach na zdalnym końcu każdego połączenia. Parametry ComputerName lub ConnectionUri Get-PSSession
można użyć, 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, takich jak Name, ID, InstanceID, State, ApplicationName i ConfigurationName, aby wybrać spośród zwracanych sesjiGet-PSSession
.
Użyj pozostałych parametrów, aby skonfigurować połączenie tymczasowe, w którym Get-PSSession
polecenie jest uruchamiane podczas korzystania z parametrów ComputerName lub ConnectionUri .
Uwaga
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 nawiąż 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 sesje PSSessions , które zostały utworzone w bieżącej sesji. Nie uzyskuje ona sesji PSSessions utworzonych w innych sesjach lub na innych komputerach, nawet jeśli nawiążą połączenie z tym komputerem.
Przykład 2. Uzyskiwanie 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 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ą 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 polecenia cmdlet do utworzenia New-PSSession
psSessions na trzech komputerach zdalnych.
Drugie polecenie używa Get-PSSession
polecenia cmdlet do pobrania trzech 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 jego identyfikatora wystąpienia, a następnie usunąć usługę PSSession.
Pierwsze polecenie pobiera wszystkie sesje PSSessions , które zostały utworzone w bieżącej sesji. Wysyła on polecenia cmdlet PSSessions do Format-Table
polecenia cmdlet, które wyświetla właściwości ComputerName i InstanceID każdego psSession.
Drugie polecenie używa Get-PSSession
polecenia cmdlet , aby uzyskać określony plik PSSession i zapisać go w zmiennej $s
. Polecenie używa parametru InstanceID do identyfikacji 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ą ITTasks
konfiguracji sesji. Polecenie używa parametru Name do określenia wzorca nazwy i parametru ConfigurationName w celu określenia konfiguracji sesji. Wartość parametru SessionOption jest tabelą skrótów, 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 oznacza, że nie jest używana.
Drugie polecenie używa Get-PSSession
polecenia cmdlet , aby przejść 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 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 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 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 Get-PSSession
polecenia z parametrem 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 Get-PSSession
jest uruchamiane polecenie.
Ten parametr konfiguruje tymczasowe połączenie, które jest tworzone w celu uruchomienia Get-PSSession
polecenia za pomocą parametru ComputerName lub ConnectionUri .
Dopuszczalne wartości tego parametru to:
Default
Basic
CredSSP
Digest
Kerberos
Negotiate
NegotiateWithImplicitCredential
.
Domyślna wartość to Default
.
Aby uzyskać więcej informacji na temat wartości tego parametru, zobacz AuthenticationMechanism Enumeration (Wyliczenie AuthenticationMechanism).
Uwaga
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 Get-PSSession
jest uruchamiane polecenie. Wprowadź odcisk palca certyfikatu.
Ten parametr konfiguruje tymczasowe połączenie, które jest tworzone 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 Get-Item
polecenia lub Get-ChildItem
na dysku programu PowerShell Cert:
.
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 żadnej 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 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 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 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.
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, 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 tymczasowe połączenie, które jest tworzone w celu uruchomienia Get-PSSession
polecenia z parametrem 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 z portami standardów: 80
dla protokołu HTTP i 443
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 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 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 służy do konfigurowania połączenia tymczasowego utworzonego w celu uruchomienia Get-PSSession
polecenia z parametrem ComputerName lub 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, 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ć niż InstanceId, ale jest unikatowy tylko w ramach 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. Identyfikator wystąpienia 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.
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 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 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 służy do konfigurowania połączenia tymczasowego utworzonego w celu uruchomienia Get-PSSession
polecenia z parametrem ComputerName lub ConnectionUri .
Nie używaj parametru Port , chyba że musisz. Zestaw portów 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 za pomocą New-PSSessionOption
polecenia cmdlet lub tabela skrótów, 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 została 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 dla sesji ustawionych 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.
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
. Domyślna wartość 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ć w celu uruchomienia Get-PSSession
polecenia. Jeśli pominiesz ten parametr lub wprowadź 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 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 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 Get-VM
polecenia cmdlet .
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 Windows PowerShell zawiera następujące aliasy dla programu Get-PSSession
:
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 programu Windows PowerShell 3.0, obiekty PSSession są przechowywane na komputerze, który znajduje się po stronie serwera lub odbiera koniec 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 przefiltrować 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 używania parametrów
Get-PSSession
ComputerName lub ConnectionUri pobiera tylko sesje z komputerów z programem Windows PowerShell 3.0 i nowszymi wersjami programu PowerShell.Wartość właściwości State sesji PSSession jest względna dla bieżącej sesji. W związku z tym wartość Disconnected 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, czy ponownie nawiązać połączenie z programem 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ść 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 State sesji, zobacz RunspaceState, wyliczenie.
Aby uzyskać więcej informacji na temat wartości właściwości Availability sesji, zobacz RunspaceAvailability Enumeration (Wyliczenie RunspaceAvailability).