Udostępnij za pośrednictwem


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. Możesz użyć parametrów Get-PSSessionComputerName lub ConnectionUri programu , 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 sesji, które Get-PSSession zwracają.

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 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 pobiera sesji PSSessions utworzonych 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ą podłączone do komputera lokalnego. 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. Sesja ScheduledJobs , czyli 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 Get-PSSession polecenia w wielu zmiennych.

Pierwsze polecenie używa New-PSSession polecenia cmdlet do utworzenia sesji 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ć sesję PSSession przy użyciu identyfikatora wystąpienia, a następnie usunąć sesję PSSession.

Pierwsze polecenie pobiera wszystkie sesje PSSessions , które zostały utworzone w bieżącej sesji. Wysyła on 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 do pobrania określonego psSession i zapisania 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ę 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 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 Otwarty i jest dostępna do użycia.

Przykład 7. Uzyskiwanie sesji przy użyciu jej 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 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 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 tymczasowe połączenie, które jest tworzone w celu uruchomienia Get-PSSession polecenia z parametrem 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 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 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.

Ten parametr konfiguruje tymczasowe połączenie, które jest tworzone w celu uruchomienia Get-PSSession polecenia z parametrem 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 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 uzyskać 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 co najmniej jednego komputera. Aby określić komputer lokalny, wpisz nazwę komputera, localhostlub kropkę (.).

Uwaga

Ten parametr pobiera sesje tylko z komputerów z systemem Windows PowerShell w wersji 3.0 lub nowszej 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, identyfikator URI schematu zostanie 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 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 parametru ConnectionUri, możesz użyć parametrów UseSSL, ComputerName, Port i ApplicationName , aby określić wartości 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 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 nowszym w 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 interaktywną sesję z każdym z określonych kontenerów. docker ps Użyj polecenia , 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 securestring?.

Ten parametr służy do konfigurowania tymczasowego połączenia, które jest tworzone w celu uruchomienia Get-PSSession polecenia z parametrem 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ć wartość InstanceId, ale jest unikatowa 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, który jest używany dla 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, czyli port usługi WinRM dla protokołu HTTPS.

Przed użyciem alternatywnego portu 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 tymczasowego połączenia, które jest tworzone w celu uruchomienia Get-PSSession polecenia z parametrem 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. Alternatywne ustawienie 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 są wartościami 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 ani 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, , OpenedDisconnected, 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ę 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 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 nawiązania 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 kończy się niepowodzeniem.

Ten parametr konfiguruje połączenie tymczasowe utworzone 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 sesję interaktywną 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 sesję interaktywną 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 przekazać danych wejściowych potoku do tego polecenia cmdlet.

Dane wyjściowe

PSSession

Uwagi

  • To polecenie cmdlet pobiera obiekty PSSession zarządzane przez użytkownika, takie jak te, które są tworzone przy użyciu New-PSSessionpoleceń cmdlet , Enter-PSSessioni Invoke-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óra Get-PSSession używa.
  • W przypadku używania parametrów Get-PSSessionComputerName lub ConnectionUri program pobiera tylko sesje z komputerów z systemem Windows PowerShell 3.0 lub nowszymi wersjami programu PowerShell.
  • Wartość właściwości Statesesji PSSession jest względna względem 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 z programem PSSession z bieżącej sesji, użyj właściwości Availability .

Wartość Availability (Dostępność ) none (Brak ) wskazuje, że można nawiązać połączenie z sesją. Wartość Busy wskazuje, że nie można nawiązać połączenia z sesją 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 Enumeration (Wyliczenie RunspaceState).

Aby uzyskać więcej informacji na temat wartości właściwości Availability sesji, zobacz RunspaceAvailability Enumeration (Wyliczenie RunspaceAvailability).