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 , созданные в текущем сеансе. Он отправляет psSessionsFormat-Table
в командлет , который отображает свойства ComputerName и InstanceID каждого psSession.
Вторая команда использует 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
сеанс. Сеанс отключен, а параметр Availability имеет None
значение , что означает, что он не используется.
Вторая команда использует командлет для Get-PSSession
подключения к сеансу BackupJob04
Connect-PSSession
и командлет для подключения к сеансу. Сеанс сохраняется в переменную $s
.
Третья команда получает сеанс в переменной $s
. Выходные данные показывают, что команда выполнена Connect-PSSession
успешно. Сеанс находится в состоянии Opened и доступен для использования.
Пример 7. Получение сеанса по его идентификатору
Get-PSSession -Id 2
Эта команда получает PSSession с идентификатором2
. Так как значение свойства ID уникально только в текущем сеансе, параметр Id действителен только для локальных команд.
Параметры
-AllowRedirection
Указывает, что этот командлет разрешает перенаправление этого подключения на альтернативный универсальный код ресурса (URI). По умолчанию PowerShell не перенаправляет подключения.
Этот параметр настраивает временное подключение, созданное для выполнения команды с параметром Get-PSSession
ConnectionUri .
Этот параметр впервые появился в Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ApplicationName
Указывает имя приложения. Этот командлет подключается только к сеансам, в которых используется указанное приложение.
Введите сегмент имени приложения URI подключения. Например, в следующем URI подключения имя приложения — WSMan: http://localhost:5985/WSMAN
. Имя приложения сеанса хранится в свойстве сеанса Runspace.ConnectionInfo.AppName.
Значение этого параметра используется для выбора и фильтрации сеансов. Оно не изменяет приложение, которое использует сеанс.
Type: | String |
Position: | Named |
Default value: | All sessions |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Authentication
Указывает механизм, используемый для проверки подлинности учетных данных для сеанса, в котором выполняется Get-PSSession
команда.
Этот параметр настраивает временное подключение, созданное для выполнения Get-PSSession
команды с помощью параметра ComputerName или ConnectionUri .
Допустимые значения для этого параметра:
Default
Basic
CredSSP
Digest
Kerberos
Negotiate
NegotiateWithImplicitCredential
.
Значение по умолчанию — Default
.
Дополнительные сведения о значениях этого параметра см. в разделе Перечисление AuthenticationMechanism.
Внимание!
Аутентификация CredSSP, в рамках которой учетные данные пользователя передаются на удаленный компьютер для проверки, предназначена для команд, требующих аутентификацию нескольких ресурсов, например для доступа к удаленной сетевой папке. Этот механизм повышает риск безопасности удаленной операции. Если удаленный компьютер скомпрометирован, учетные данные, передаваемые ему, могут использоваться для управления сетевым сеансом.
Этот параметр впервые появился в 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
Указывает цифровой сертификат открытого ключа (X509) учетной записи пользователя, которая имеет разрешение на создание сеанса, в котором выполняется Get-PSSession
команда. Введите отпечаток сертификата.
Этот параметр настраивает временное подключение, созданное для выполнения Get-PSSession
команды с помощью параметра ComputerName или ConnectionUri .
Сертификаты используются при проверке подлинности на основе сертификата клиента. Они могут сопоставляться только с учетными записями локальных пользователей и не работают с учетными записями доменов.
Чтобы получить отпечаток сертификата, используйте Get-Item
команду или Get-ChildItem
на диске PowerShell Cert:
.
Этот параметр впервые появился в Windows PowerShell 3.0.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ComputerName
Задает массив имен компьютеров. Возвращает сеансов, которые подключаются к указанным компьютерам. Подстановочные знаки не допускаются. Значение по умолчанию отсутствует.
Начиная с Windows PowerShell 3.0, объекты PSSession хранятся на компьютерах в удаленном конце каждого подключения. Чтобы получить сеансы на указанных компьютерах, PowerShell создает временное подключение к каждому компьютеру Get-PSSession
и выполняет команду.
Введите имя NetBIOS, IP-адрес или полное доменное имя одного или нескольких компьютеров. Чтобы указать локальный компьютер, введите имя localhost
компьютера или точку (.
).
Примечание
Этот параметр получает сеансы только с компьютеров под управлением Windows PowerShell 3.0 или более поздних версий PowerShell. Предыдущие версии не хранят сеансы.
Type: | String[] |
Aliases: | Cn |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ConfigurationName
Указывает имя конфигурации. Этот командлет получает только сеансы, использующие указанную конфигурацию сеанса.
Введите имя конфигурации или полное имя ресурса (URI) для конфигурации сеанса. Если указать только имя конфигурации, предопределен следующий универсальный код ресурса (URI) схемы: http://schemas.microsoft.com/powershell
. Имя конфигурации сеанса хранится в свойстве сеанса ConfigurationName.
Значение этого параметра используется для выбора и фильтрации сеансов. Оно не изменяет конфигурацию, которую использует сеанс.
Дополнительные сведения о конфигурациях сеансов см. в разделе about_Session_Configurations.
Type: | String |
Position: | Named |
Default value: | All sessions |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | 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. Предыдущие версии не хранят сеансы.
Type: | Uri[] |
Aliases: | URI, CU |
Position: | 0 |
Default value: | Http://localhost:5985/WSMAN |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ContainerId
Задает массив идентификаторов контейнеров. Этот командлет запускает интерактивный сеанс с каждым из указанных контейнеров. Используйте команду , docker ps
чтобы получить список идентификаторов контейнеров. Дополнительные сведения см. в справке по команде docker ps .
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Credential
Указывает учетные данные пользователя. Этот командлет выполняет команду с разрешениями указанного пользователя. Укажите учетную запись пользователя с разрешением на подключение к удаленному компьютеру Get-PSSession
и выполните команду. По умолчанию используется текущий пользователь.
Введите имя пользователя, например User01
или Domain01\User01
, или введите объект PSCredential , созданный командлетом Get-Credential
. Если вы вводите имя пользователя, вам будет предложено ввести пароль.
Учетные данные хранятся в объекте PSCredential , а пароль хранится как SecureString.
Примечание
Дополнительные сведения о защите данных SecureString см. в разделе Насколько безопасно SecureString?.
Этот параметр настраивает для временного подключения, созданного для выполнения команды с параметром Get-PSSession
ComputerName или ConnectionUri .
Этот параметр впервые появился в Windows PowerShell 3.0.
Type: | PSCredential |
Position: | Named |
Default value: | Current user |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Id
Задает массив идентификаторов сеансов. Этот командлет получает только сеансы с указанными идентификаторами. Введите один или несколько идентификаторов, разделенных запятыми, или используйте оператор диапазона (..
), чтобы указать диапазон идентификаторов.
Нельзя использовать параметр ID вместе с параметром ComputerName .
Идентификатор — это целое число, которое однозначно идентифицирует сеансы, управляемые пользователем, в текущем сеансе. Его легче запомнить и ввести, чем InstanceId, но он уникален только в рамках текущего сеанса. Идентификатор сеанса хранится в свойстве ID сеанса.
Type: | Int32[] |
Position: | 0 |
Default value: | All sessions |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-InstanceId
Задает массив идентификаторов экземпляров сеансов. Этот командлет получает только сеансы с указанными идентификаторами экземпляров.
Идентификатор экземпляра — это GUID, однозначно определяющий сеанс на локальном или удаленном компьютере. Идентификатор экземпляра уникален, даже если в PowerShell выполняется несколько сеансов.
Идентификатор экземпляра сеанса хранится в свойстве сеанса InstanceID.
Type: | Guid[] |
Position: | Named |
Default value: | All sessions |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Задает массив имен сеансов. Этот командлет получает только сеансы с указанными понятными именами. Можно использовать подстановочные знаки.
Понятное имя сеанса хранится в свойстве Name.
Type: | String[] |
Position: | Named |
Default value: | All sessions |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | 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.
Type: | Int32 |
Position: | Named |
Default value: | 5985, 5986 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SessionOption
Задает дополнительные параметры для сеанса. Введите объект SessionOption , например создаваемый с помощью New-PSSessionOption
командлета, или хэш-таблицу, в которой ключи являются именами параметров сеанса, а значения — значениями параметров сеанса.
Значения по умолчанию для параметров определяются значением переменной $PSSessionOption
предпочтения, если она задана. В противном случае значения по умолчанию задаются параметрами, указанными в конфигурации сеанса.
Значения параметров сеанса имеют приоритет над значениями по умолчанию для сеансов, заданных в переменной $PSSessionOption
предпочтения и в конфигурации сеанса. Однако они не имеют приоритет над максимальными значениями, квотами и ограничениями, заданными в конфигурации сеанса.
Описание параметров сеанса, включая значения по умолчанию, см. в разделе New-PSSessionOption
.
Сведения о переменной предпочтения см. в $PSSessionOption
разделе about_Preference_Variables. Дополнительные сведения о конфигурациях сеансов см. в разделе about_Session_Configurations.
Type: | PSSessionOption |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-State
Указывает состояние сеанса. Этот командлет получает только сеансы в указанном состоянии. Допустимые значения для этого параметра: All
, Opened
, Disconnected
, Closed
и Broken
. Значение по умолчанию — All
.
Значение состояния сеанса задается относительно текущих сеансов. Сеансы, которые не были созданы в текущих сеансах и не подключены к текущему сеансу, имеют состояние Disconnected
даже в том случае, если они подключены к другому сеансу.
Состояние сеанса хранится в свойстве State.
Этот параметр впервые появился в 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
Указывает максимальное количество одновременных подключений, которые можно установить для выполнения Get-PSSession
команды. Если опустить этот параметр или ввести значение 0
(ноль), используется значение 32
по умолчанию , . Предел регулирования применяется только к текущему командлету, а не к сеансу или компьютеру.
Этот параметр впервые появился в Windows PowerShell 3.0.
Type: | Int32 |
Position: | Named |
Default value: | 32 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UseSSL
Указывает, что этот командлет использует протокол SSL для установки соединения, в котором выполняется Get-PSSession
команда. По умолчанию SSL не используется. Если вы используете этот параметр, но SSL недоступен для порт, указанному в команде, она завершается ошибкой.
Этот параметр настраивает временное подключение, созданное для выполнения команды с параметром Get-PSSession
ComputerName .
Этот параметр впервые появился в Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VMId
Задает массив идентификаторов виртуальных машин. Этот командлет запускает интерактивный сеанс с каждой из указанных виртуальных машин. Чтобы просмотреть доступные виртуальные машины, выполните следующую команду:
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
Указывает массив имен виртуальных машин. Этот командлет запускает интерактивный сеанс с каждой из указанных виртуальных машин. Чтобы просмотреть доступные виртуальные машины, используйте Get-VM
командлет .
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Входные данные
None
В этот командлет нельзя передать входные данные.
Выходные данные
Примечания
- Этот командлет получает управляемые пользователем объекты PSSession сеансов , например созданные с помощью
New-PSSession
командлетов ,Enter-PSSession
иInvoke-Command
. Он не получает управляемый системой сеанс, который создается при запуске PowerShell. - Начиная с Windows PowerShell 3.0, объекты PSSession хранятся на компьютере, который находится на стороне сервера или принимающей стороне подключения. Чтобы получить сеансы, хранящиеся на локальном или удаленном компьютере, PowerShell устанавливает временный сеанс для указанного компьютера и выполняет команды запроса в сеансе.
- Чтобы получить сеансы, которые подключены к удаленному компьютеру, укажите удаленный компьютер в параметре ComputerName или ConnectionUri. Чтобы отфильтровать получаемые
Get-PSSession
сеансы, используйте параметры Name, ID, InstanceID и State . Используйте остальные параметры для настройки временного сеанса, которыйGet-PSSession
использует. - При использовании параметров ComputerName или ConnectionUri получает только сеансы с компьютеров под
Get-PSSession
управлением Windows PowerShell 3.0 и более поздних версий PowerShell. - Значение свойства StatepsSession относительно текущего сеанса. Таким образом, значение Disconnected означает, что PSSession не подключен к текущему сеансу. Однако это не означает, что PSSession отключен от всех сеансов. Он может быть подключен к другому сеансу. Чтобы определить, можно ли подключиться или повторно подключиться к PSSession из текущего сеанса, используйте свойство Availability .
Если свойство Availability имеет значение None, подключиться к сеансу можно. Значение Busy указывает, что вы не можете подключиться к PSSession , так как оно подключено к другому сеансу.
Дополнительные сведения о значениях свойства State сеансов см. в разделе Перечисление RunspaceState.
Дополнительные сведения о значениях свойства Availability сеансов см. в разделе Перечисление RunspaceAvailability.