Поделиться через


Get-PSSession

Возвращает сеансы PowerShell на локальных и удаленных компьютерах.

Синтаксис

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>]

Описание

Командлет Get-PSSession получает сеансы PowerShell, управляемые пользователем (PSSessions) на локальных и удаленных компьютерах.

Начиная с Windows PowerShell 3.0 сеансы хранятся на компьютерах в удаленном конце каждого подключения. Параметры ComputerName или ConnectionUri Get-PSSession можно использовать для получения сеансов, которые подключаются к локальному компьютеру или удаленным компьютерам, даже если они не были созданы в текущем сеансе.

Без параметров Get-PSSession получает все сеансы, созданные в текущем сеансе.

Используйте параметры фильтрации, включая name, ID, InstanceID, State, ApplicationName и ConfigurationName, чтобы выбрать один из возвращающих Get-PSSession сеансов.

Используйте оставшиеся параметры для настройки временного подключения, в котором Get-PSSession выполняется команда при использовании параметров ComputerName или ConnectionUri .

Примечание.

В Windows PowerShell 2.0 без параметров Get-PSSession получает все сеансы, созданные в текущем сеансе. Параметр ComputerName получает сеансы, созданные в текущем сеансе, и подключается к указанному компьютеру.

Дополнительные сведения о сеансах PowerShell см. в about_PSSessions.

Примеры

Пример 1. Получение сеансов, созданных в текущем сеансе

Get-PSSession

Эта команда получает все psSessions , созданные в текущем сеансе. Он не получает psSessions , созданные в других сеансах или на других компьютерах, даже если они подключаются к этому компьютеру.

Пример 2. Получение сеансов, подключенных к локальному компьютеру

Get-PSSession -ComputerName "localhost"

Эта команда получает psSessions , подключенные к локальному компьютеру. Чтобы указать локальный компьютер, введите имя компьютера, localhost или точку (.)

Эта команда возвращает все сеансы на локальном компьютере, даже если они были созданы в других сеансах или на других компьютерах.

Пример 3. Получение сеансов, подключенных к компьютеру

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

Эта команда получает psSessions , подключенные к компьютеру Server02.

Эта команда возвращает все сеансы на компьютере Server02, даже если они были созданы в других сеансах или на других компьютерах.

Выходные данные показывают, что два сеанса имеют Disconnected состояние и Busy доступность. Они были созданы в различных сеансах и в настоящее время используются. Сеанс ScheduledJobs , который является Opened и Availableбыл создан в текущем сеансе.

Пример 4. Сохранение результатов этой команды

New-PSSession -ComputerName Server01, Server02, Server03
$s1, $s2, $s3 = Get-PSSession

В этом примере показано, как сохранить результаты Get-PSSession команды в нескольких переменных.

Первая команда использует New-PSSession командлет для создания PSSessions на трех удаленных компьютерах.

Вторая команда использует Get-PSSession командлет для получения трех PSSessions. Затем он сохраняет каждую из PSSessions в отдельной переменной.

Когда PowerShell назначает массив объектов массиву переменных, он назначает первый объект первой переменной, второй объект второй переменной второй переменной и т. д. Если объектов больше, чем переменных, все оставшиеся объекты назначаются последней переменной в массиве. Если переменных больше, чем объектов, дополнительные переменные не используются.

Пример 5. Удаление сеанса с помощью идентификатора экземпляра

Get-PSSession | Format-Table -Property ComputerName, InstanceID
$s = Get-PSSession -InstanceID a786be29-a6bb-40da-80fb-782c67f7db0f
Remove-PSSession -Session $s

В этом примере показано, как получить PSSession с помощью его идентификатора экземпляра, а затем удалить PSSession.

Первая команда получает все psSessions , созданные в текущем сеансе. Он отправляет psSessions в командлет, который отображает свойства ComputerName и InstanceID каждого PSSession.Format-Table

Вторая команда использует Get-PSSession командлет для получения определенного psSession и сохранения его в переменной $s . Команда использует параметр InstanceID для идентификации PSSession.

Третья команда использует командлет Remove-PSSession для удаления PSSession в переменной $s .

Пример 6. Получение сеанса с определенным именем

Команды в этом примере находят сеанс, имя которого имеет определенный формат, использует конфигурацию сеанса и затем подключается к сеансу. С помощью подобной команды можно найти сеанс, в котором коллега запустил задачу, и подключиться к нему для завершения задачи.

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

Первая команда получает сеансы на удаленных компьютерах Server02 и Server12 с именами, начинающимися с BackupJob конфигурации сеанса ITTasks . Команда использует параметр Name для указания шаблона имени и параметра ConfigurationName для указания конфигурации сеанса. Значение параметра SessionOption — это хэш-таблица, которая задает значение OperationTimeout в 240000 миллисекундах (4 минуты). Этот параметр дает команде больше времени для завершения. Параметры ConfigurationName и SessionOption используются для настройки временных сеансов, в которых Get-PSSession командлет выполняется на каждом компьютере. Выходные данные показывают, что команда возвращает BackupJob04 сеанс. Сеанс отключен, а доступность None— это означает, что он не используется.

Вторая команда использует Get-PSSession командлет для получения BackupJob04 сеанса и Connect-PSSession командлета для подключения к сеансу. Сеанс сохраняется в переменную $s.

Третья команда получает сеанс в переменной $s . В выходных данных показано, что команда выполнена Connect-PSSession успешно. Сеанс находится в открытом состоянии и доступен для использования.

Пример 7. Получение сеанса с помощью его идентификатора

Get-PSSession -Id 2

Эта команда получает PSSession с идентификатором2. Так как значение свойства ID уникально только в текущем сеансе, параметр Id действителен только для локальных команд.

Параметры

-AllowRedirection

Указывает, что этот командлет разрешает перенаправление этого подключения к альтернативному универсальному идентификатору ресурса (URI). По умолчанию PowerShell не перенаправляет подключения.

Этот параметр настраивает временное подключение, созданное для выполнения Get-PSSession команды с параметром ConnectionUri .

Этот параметр впервые появился в Windows PowerShell 3.0.

Тип:SwitchParameter
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ApplicationName

Указывает имя приложения. Этот командлет подключается только к сеансам, используюющим указанное приложение.

Введите сегмент имени приложения URI подключения. Например, в следующем URI подключения имя приложения — WSMan: http://localhost:5985/WSMAN Имя приложения сеанса хранится в свойстве Runspace.ConnectionInfo.AppName сеанса.

Значение этого параметра используется для выбора и фильтрации сеансов. Оно не изменяет приложение, которое использует сеанс.

Тип:String
Position:Named
Default value:All sessions
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Authentication

Указывает механизм, используемый для проверки подлинности учетных данных для сеанса, в котором Get-PSSession выполняется команда.

Этот параметр настраивает временное подключение, созданное для выполнения Get-PSSession команды с параметром ComputerName или ConnectionUri .

Допустимые значения для этого параметра:

  • Default
  • Basic
  • CredSSP
  • Digest
  • Kerberos
  • Negotiate
  • NegotiateWithImplicitCredential.

Значение по умолчанию — Default.

Дополнительные сведения о значениях этого параметра см. в разделе "Перечисление AuthenticationMechanism".

Внимание

Проверка подлинности поставщика поддержки безопасности учетных данных (CredSSP), при которой учетные данные пользователя передаются на удаленный компьютер, который будет проходить проверку подлинности, предназначен для команд, требующих проверки подлинности на нескольких ресурсах, таких как доступ к удаленному сетевому ресурсу. Этот механизм повышает риск безопасности удаленной операции. Если удаленный компьютер скомпрометирован, учетные данные, передаваемые ему, могут использоваться для управления сетевым сеансом.

Этот параметр впервые появился в Windows PowerShell 3.0.

Тип:AuthenticationMechanism
Допустимые значения:Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos
Position:Named
Default value:Default
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-CertificateThumbprint

Указывает сертификат цифрового открытого ключа (X509) учетной записи пользователя с разрешением на создание сеанса, в котором Get-PSSession выполняется команда. Введите отпечаток сертификата.

Этот параметр настраивает временное подключение, созданное для выполнения Get-PSSession команды с параметром ComputerName или ConnectionUri .

Сертификаты используются при проверке подлинности на основе сертификата клиента. Они могут сопоставляться только с учетными записями локальных пользователей и не работают с учетными записями доменов.

Чтобы получить отпечаток сертификата, используйте команду Get-Item Get-ChildItem или команду на диске PowerShell Cert: .

Этот параметр впервые появился в Windows PowerShell 3.0.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ComputerName

Задает массив имен компьютеров. Возвращает сеансов, которые подключаются к указанным компьютерам. Подстановочные знаки не допускаются. Нет значения по умолчанию.

Начиная с Windows PowerShell 3.0 объекты PSSession хранятся на компьютерах в удаленном конце каждого подключения. Чтобы получить сеансы на указанных компьютерах, PowerShell создает временное подключение к каждому компьютеру Get-PSSession и выполняет команду.

Введите имя NetBIOS, IP-адрес или полное доменное имя одного или нескольких компьютеров. Чтобы указать локальный компьютер, введите имя localhostкомпьютера или точку (.).

Примечание.

Этот параметр получает сеансы только с компьютеров под управлением Windows PowerShell 3.0 или более поздних версий PowerShell. Предыдущие версии не хранят сеансы.

Тип:String[]
Aliases:Cn
Position:0
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-ConfigurationName

Указывает имя конфигурации. Этот командлет получает только сеансы, использующие указанную конфигурацию сеанса.

Введите имя конфигурации или полное имя ресурса (URI) для конфигурации сеанса. Если указать только имя конфигурации, предопределен следующий универсальный код ресурса (URI) схемы: http://schemas.microsoft.com/powershell Имя конфигурации сеанса хранится в свойстве ConfigurationName сеанса.

Значение этого параметра используется для выбора и фильтрации сеансов. Оно не изменяет конфигурацию, которую использует сеанс.

Дополнительные сведения о конфигурациях сеансов см. в разделе about_Session_Configurations.

Тип:String
Position:Named
Default value:All sessions
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-ConnectionUri

Задает универсальный код ресурса (URI), определяющий конечную точку подключения для временного сеанса, в котором Get-PSSession выполняется команда. Значение URI должно быть указано полностью.

Этот параметр настраивает временное подключение, созданное для выполнения Get-PSSession команды с параметром ConnectionUri .

Строки имеют следующий формат:

<Transport>://<ComputerName>:<Port\>/<ApplicationName>

Значение по умолчанию ― http://localhost:5985/WSMAN.

Если параметр ConnectionUri не указан, можно использовать параметры UseSSL, ComputerName, Port и ApplicationName, чтобы указать значения ConnectionURI. Допустимые значения для сегмента транспорта URI — HTTP и HTTPS. Если указать универсальный код ресурса (URI) подключения с сегментом транспорта, но не указать порт, сеанс создается с помощью портов стандартов: 80 для HTTP и 443 HTTPS. Чтобы использовать порты по умолчанию для удаленного взаимодействия PowerShell, укажите порт 5985 для HTTP или 5986 HTTPS.

Если целевой компьютер перенаправляет подключение к другому URI, PowerShell запрещает перенаправление, если в команде не используется параметр AllowRedirection .

Этот параметр впервые появился в Windows PowerShell 3.0.

Этот параметр получает сеансы только с компьютеров под управлением Windows PowerShell 3.0 или более поздних версий Windows PowerShell. Предыдущие версии не хранят сеансы.

Тип:Uri[]
Aliases:URI, CU
Position:0
Default value:Http://localhost:5985/WSMAN
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-ContainerId

Задает массив идентификаторов контейнеров. Этот командлет запускает интерактивный сеанс с каждым из указанных контейнеров. docker ps Используйте команду, чтобы получить список идентификаторов контейнеров. Дополнительные сведения см. в справке для команды docker ps .

Тип:String[]
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Credential

Указывает учетные данные пользователя. Этот командлет выполняет команду с разрешениями указанного пользователя. Укажите учетную запись пользователя, которая имеет разрешение на подключение к удаленному компьютеру Get-PSSession и выполните команду. По умолчанию используется текущий пользователь.

Введите имя пользователя, например User01 или Domain01\User01или введите объект PSCredential , созданный командлетом Get-Credential . Если ввести имя пользователя, вам будет предложено ввести пароль.

Учетные данные хранятся в объекте PSCredential , а пароль хранится как SecureString.

Примечание.

Дополнительные сведения о защите данных SecureString см. в разделе "Как безопасна Защита SecureString?".

Этот параметр настраивает временное подключение, созданное для выполнения Get-PSSession команды с параметром ComputerName или ConnectionUri .

Этот параметр впервые появился в Windows PowerShell 3.0.

Тип:PSCredential
Position:Named
Default value:Current user
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Id

Задает массив идентификаторов сеансов. Этот командлет получает только сеансы с указанными идентификаторами. Введите один или несколько идентификаторов, разделенных запятыми, или используйте оператор диапазона (..) для указания диапазона идентификаторов. Нельзя использовать параметр идентификатора вместе с параметром ComputerName .

Идентификатор — это целое число, которое однозначно идентифицирует сеансы, управляемые пользователем, в текущем сеансе. Проще запоминать и вводить идентификатор instanceId, но он является уникальным только в текущем сеансе. Идентификатор сеанса хранится в свойстве идентификатора сеанса.

Тип:Int32[]
Position:0
Default value:All sessions
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-InstanceId

Задает массив идентификаторов экземпляров сеансов. Этот командлет получает только сеансы с указанными идентификаторами экземпляров.

Идентификатор экземпляра — это GUID, однозначно определяющий сеанс на локальном или удаленном компьютере. Идентификатор экземпляра является уникальным, даже если в PowerShell выполняется несколько сеансов.

Идентификатор экземпляра сеанса хранится в свойстве InstanceID сеанса.

Тип:Guid[]
Position:Named
Default value:All sessions
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Name

Задает массив имен сеансов. Этот командлет получает только сеансы с указанными понятными именами. Можно использовать подстановочные знаки.

Понятное имя сеанса хранится в свойстве Name сеанса.

Тип:String[]
Position:Named
Default value:All sessions
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:True

-Port

Указывает указанный сетевой порт, используемый для временного подключения, в котором Get-PSSession выполняется команда. Для подключения к удаленному компьютеру требуется, чтобы он прослушивал порт, используемый соединением. Порты по умолчанию — 5985это порт WinRM для HTTP, который 5986является портом WinRM для HTTPS.

Прежде чем использовать альтернативный порт, необходимо настроить прослушиватель WinRM на удаленном компьютере для прослушивания по этому порту. Чтобы настроить прослушиватель, введите следующие две команды в командной строке PowerShell:

Remove-Item -Path WSMan:\Localhost\listener\listener* -Recurse

New-Item -Path WSMan:\Localhost\listener -Transport http -Address * -Port \<port-number\>

Этот параметр настраивает временное подключение, созданное для выполнения Get-PSSession команды с параметром ComputerName или ConnectionUri .

Не используйте параметр Port без крайней необходимости. Набор портов в команде применяется ко всем компьютерам или сеансам, на которых выполняется команда. Альтернативный порт может помешать выполнению команды на всех компьютерах.

Этот параметр впервые появился в Windows PowerShell 3.0.

Тип:Int32
Position:Named
Default value:5985, 5986
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-SessionOption

Задает дополнительные параметры сеанса. Введите объект SessionOption, например создаваемый с помощью командлетаNew-PSSessionOption, или хэш-таблицу, в которой ключи являются именами параметров сеанса, а значения — значениями параметра сеанса.

Значения по умолчанию для параметров определяются значением переменной $PSSessionOption предпочтения, если она задана. В противном случае значения по умолчанию задаются параметрами, указанными в конфигурации сеанса.

Значения параметра сеанса имеют приоритет над значениями по умолчанию для сеансов, заданных в переменной $PSSessionOption предпочтения и в конфигурации сеанса. Однако они не имеют приоритет над максимальными значениями, квотами и ограничениями, заданными в конфигурации сеанса.

Описание параметров сеанса, включая значения по умолчанию, см. в разделе New-PSSessionOption. Сведения о переменной $PSSessionOption предпочтения см. в about_Preference_Variables. Дополнительные сведения о конфигурациях сеансов см. в разделе about_Session_Configurations.

Тип:PSSessionOption
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-State

Указывает состояние сеанса. Этот командлет получает только сеансы в указанном состоянии. Допустимые значения для этого параметра: All, , , Disconnectedи ClosedBroken. Opened Значение по умолчанию — All.

Значение состояния сеанса задается относительно текущих сеансов. Сеансы, которые не были созданы в текущих сеансах и не подключены к текущему сеансу, имеют состояние Disconnected даже при подключении к другому сеансу.

Состояние сеанса хранится в свойстве State сеанса.

Этот параметр впервые появился в Windows PowerShell 3.0.

Тип:SessionFilterState
Допустимые значения:All, Opened, Disconnected, Closed, Broken
Position:Named
Default value:All
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ThrottleLimit

Указывает максимальное количество одновременных подключений, которые можно установить для выполнения Get-PSSession команды. Если этот параметр не указан или введите значение 0 (ноль), используется значение 32по умолчанию. Предел регулирования применяется только к текущему командлету, а не к сеансу или компьютеру.

Этот параметр впервые появился в Windows PowerShell 3.0.

Тип:Int32
Position:Named
Default value:32
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-UseSSL

Указывает, что этот командлет использует протокол SSL для установления соединения, в котором Get-PSSession выполняется команда. По умолчанию SSL не используется. Если вы используете этот параметр, но SSL недоступен для порт, указанному в команде, она завершается ошибкой.

Этот параметр настраивает временное подключение, созданное для выполнения Get-PSSession команды с параметром ComputerName .

Этот параметр впервые появился в Windows PowerShell 3.0.

Тип:SwitchParameter
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-VMId

Задает массив идентификаторов виртуальных машин. Этот командлет запускает интерактивный сеанс с каждой из указанных виртуальных машин. Чтобы просмотреть доступные виртуальные машины, используйте следующую команду:

Get-VM | Select-Object -Property Name, ID

Тип:Guid[]
Aliases:VMGuid
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-VMName

Указывает массив имен виртуальных машин. Этот командлет запускает интерактивный сеанс с каждой из указанных виртуальных машин. Чтобы просмотреть доступные виртуальные машины, используйте Get-VM командлет.

Тип:String[]
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

Входные данные

None

Невозможно передать объекты в этот командлет.

Выходные данные

PSSession

Примечания

PowerShell включает следующие псевдонимы для Get-PSSession:

  • Для всех платформ.

    • gsn
  • Этот командлет получает управляемые пользователем объекты PSSession, такие как созданные с помощью New-PSSessionEnter-PSSessionкомандлетов и Invoke-Command командлетов. При запуске PowerShell он не получает сеанс, управляемый системой.

  • Начиная с Windows PowerShell 3.0 объекты PSSession хранятся на компьютере, который находится на стороне сервера или в конце подключения. Чтобы получить сеансы, хранящиеся на локальном компьютере или удаленном компьютере, PowerShell устанавливает временный сеанс на указанный компьютер и выполняет команды запросов в сеансе.

  • Чтобы получить сеансы, которые подключаются к удаленному компьютеру, используйте параметры ComputerName или ConnectionUri , чтобы указать удаленный компьютер. Чтобы отфильтровать сеансы, Get-PSSession используйте параметры Name, ID, InstanceID и State. Используйте оставшиеся параметры для настройки временного сеанса, который Get-PSSession используется.

  • При использовании параметров Get-PSSession ComputerName или ConnectionUri получает только сеансы с компьютеров под управлением Windows PowerShell 3.0 и более поздних версий PowerShell.

  • Значение свойства State psSession относительно текущего сеанса. Таким образом, значение "Отключено " означает, что PSSession не подключен к текущему сеансу. Однако это не означает, что PSSession отключен от всех сеансов. Он может быть подключен к другому сеансу. Чтобы определить, можно ли подключить или повторно подключиться к PSSession из текущего сеанса, используйте свойство Availability .

Значение доступности None указывает, что вы можете подключиться к сеансу. Значение "Занято " указывает, что вы не можете подключиться к PSSession , так как он подключен к другому сеансу.

Дополнительные сведения о значениях свойства State сеансов см. в разделе "Перечисление RunspaceState".

Дополнительные сведения о значениях свойства доступности сеансов см. в разделе "Перечисление RunspaceAvailability".