Получает сеансы Windows PowerShell (объекты PSSession) в текущем сеансе.
Синтаксис
Get-PSSession [[-ComputerName] <string[]>] [<CommonParameters>] Get-PSSession [-Id] <Int32[]> [<CommonParameters>] Get-PSSession [-InstanceId <Guid[]>] [<CommonParameters>] Get-PSSession [-Name <string[]>] [<CommonParameters>]
Описание
Командлет Get-PSSession получает сеансы Windows PowerShell (объекты PSSession), созданные в текущем сеансе.
При вызове без параметров команда "Get-PSSession" получает все объекты PSSession, созданные в текущем сеансе. Параметры Get-PSSession можно использовать для получения сеансов, связанных с определенными компьютерами, или определения сеансов по их именам, идентификаторам или идентификаторам экземпляров.
Дополнительные сведения о сеансах Windows PowerShell см. в разделе "about_PSSessions".
Параметры
-ComputerName <string[]>
Получает только сеансы PSSession, связанные с указанными компьютерами. Подстановочные знаки разрешены.
Введите имя NetBIOS, IP-адрес или полное доменное имя одного или нескольких компьютеров. Чтобы указать локальный компьютер, введите имя компьютера, "localhost" или точку (.).
Обязательно? |
false |
Позиция? |
1 |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
true (ByPropertyName) |
Принимать подстановочные знаки? |
true |
-Id <Int32[]>
Получает только сеансы PSSession с указанными идентификаторами. Введите один или несколько идентификаторов (разделенных запятыми) или используйте оператор диапазона (..), чтобы задать диапазон идентификаторов.
Идентификатор — это целое значение, которое однозначно определяет сеанс PSSession в пределах текущего сеанса. Это значение проще запомнить и ввести, чем InstanceId, но оно уникально только в рамках текущего сеанса. Чтобы определить идентификатор сеанса PSSession, используйте команду Get-PSSession без параметров.
Обязательно? |
true |
Позиция? |
1 |
Значение по умолчанию |
All sessions in the shell |
Принимать входные данные из конвейера? |
true (ByPropertyName) |
Принимать подстановочные знаки? |
false |
-InstanceId <Guid[]>
Получает только сеансы PSSession с указанными идентификаторами экземпляров.
Идентификатор экземпляра — это GUID, который однозначно определяет сеанс PSSession на локальном или удаленном компьютере. Идентификатор InstanceID является уникальным даже при выполнении нескольких сеансов Windows PowerShell.
Идентификатор экземпляра InstanceID хранится в свойстве InstanceID объекта, представляющего сеанс PSSession. Чтобы определить идентификаторы экземпляров InstanceID сеансов PSSession в текущем сеансе, введите команду "get-pssession | Format-Table Name, ComputerName, InstanceId".
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
true (ByPropertyName) |
Принимать подстановочные знаки? |
true |
-Name <string[]>
Получает только сеансы PSSession с указанными понятными именами. Подстановочные знаки разрешены.
Чтобы определить имена сеансов PSSession в текущем сеансе, введите команду "get-pssession" без параметров.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
true (ByPropertyName) |
Принимать подстановочные знаки? |
true |
<CommonParameters>
Данный командлет поддерживает общие параметры -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer и -OutVariable. Дополнительные сведения см. в разделе about_Commonparameters.
Ввод и вывод
Входным типом является тип объектов, которые можно передавать командлету по конвейеру. Возвращаемым типом является тип объектов, возвращаемых командлетом.
Входные данные |
None Передать входные данные этому командлету по конвейеру невозможно. |
Выходные данные |
System.Management.Automation.Runspaces.PSSession Командлет Get-PSSession возвращает объект PSSession для каждого получаемого сеанса PSSession. |
Примечания
Команда Get-PSSession получает объекты PSSession, созданные в текущем сеансе. Она не получает сеансы, которые были созданы при запуске Windows PowerShell, и не получает объекты PSSession для сеансов, которые были созданы в других сеансах или на других компьютерах, даже если они подключены к локальному компьютеру.
Пример 1
C:\PS>get-pssession Description ----------- Эта команда получает все объекты PSSession, созданные в текущем сеансе. Она не получает объекты PSSession, которые были созданы в других сеансах или на других компьютерах, даже если они подключены к этому компьютеру.
Пример 2
C:\PS>$s = get-pssession -computername Server02 Description ----------- Эта команда получает объекты PSSession, которые связаны с компьютером Server02 и сохраняет их в переменной $p.
Пример 3
C:\PS>new-pssession -computername Server01, Server02, Server03 C:\PS> $s1, $s2, $s3 = get-pssession Description ----------- В этом примере показано, как сохранить результаты выполнения команды Get-PSSession в нескольких переменных. Первая команда создает сеансы PSSession на трех удаленных компьютерах с использованием командлета New-PSSession. Вторая команда использует командлет Get-PSSession для получения трех объектов PSSession. Затем каждый из сеансов PSSession сохраняется в отдельную переменную. Когда Windows PowerShell присваивает массив объектов массиву переменных, первый объект присваивается первой переменной, второй объект присваивается второй переменной и т. д. Если количество объектов превосходит количество переменных, все оставшиеся объекты присваиваются последней переменной в форме массива. Если количество переменных превышает количество объектов, лишние переменные не используются.
Пример 4
C:\PS>get-pssession | format-table -property computername, InstanceID C:\PS> $s = get-pssession -InstanceID a786be29-a6bb-40da-80fb-782c67f7db0f C:\PS> remove-pssession -session $s Description ----------- В этом примере показано, как получить сеанс PSSession с использованием идентификатора экземпляра, и затем удалить сеанс PSSession. Первая команда получает все сеансы PSSession на локальном компьютере. Она отправляет сеансы PSSession командлету Format-Table, который отображает значения свойств ComputerName и InstanceID для каждого из сеансов PSSession. Вторая команда использует командлет Get-PSSession для получения определенного сеанса PSSession и сохраняет его в переменной $s. Эта команда использует параметр InstanceID для определения сеанса PSSession. Третья команда использует командлет Remove-PSSession для удаления сеанса PSSession, сохраненного в переменной $s.
Пример 5
C:\PS>get-pssession -computername Serv* Description ----------- Эта команда получает все сеансы PSSession, связанные с компьютерами, имена которых начинаются на "Serv".
Пример 6
C:\PS>get-pssession -name Test*, Ux* Description ----------- Эта команда возвращает сеансы PSSession, имена которых начинаются на "Test" или "Ux".
Пример 7
C:\PS>get-pssession 2 Description ----------- Эта команда получает сеанс PSSession с идентификатором, равным 2.
См. также