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


Get-Variable

Возвращает переменные в текущей консоли.

Синтаксис

Get-Variable
   [[-Name] <String[]>]
   [-ValueOnly]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Scope <String>]
   [<CommonParameters>]

Описание

Командлет Get-Variable получает переменные PowerShell в текущей консоли. Можно получить только значения переменных, указав параметр ValueOnly и отфильтровав переменные, возвращаемые по имени.

Примеры

Пример 1. Получение переменных по букве

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

Get-Variable m*

Пример 2. Получение значений переменных по букве

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

Get-Variable m* -ValueOnly

Пример 3. Получение переменных двумя буквами

Эта команда получает сведения о переменных, начинающихся с буквы M или буквы P.

Get-Variable -Include M*,P*

Пример 4. Получение переменных по области

Первая команда получает только переменные, определенные в локальной области. Это эквивалентно Get-Variable -Scope Local и может быть сокращено как gv -s 0.

Вторая команда использует командлет Compare-Object для поиска переменных, определенных в родительской области (область 1), но видимы только в локальной области (область 0).

Get-Variable -Scope 0
Compare-Object (Get-Variable -Scope 0) (Get-Variable -Scope 1)

Параметры

-Exclude

Указывает массив элементов, которые этот командлет исключает из операции. Разрешены подстановочные знаки.

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

-Include

Указывает массив элементов, с которым будет действовать командлет, за исключением всех остальных. Разрешены подстановочные знаки.

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

-Name

Указывает имя переменной. Разрешены подстановочные знаки. Можно также передать имя переменной в Get-Variable.

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

-Scope

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

  • глобальные
  • локальный
  • скрипта
  • Число относительно текущей области (от 0 до числа областей, где 0 является текущей областью, а 1 — родительским)

локальный используется по умолчанию. Дополнительные сведения см. в about_Scopes.

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

-ValueOnly

Указывает, что этот командлет получает только значение переменной.

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

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

String

Можно передать строку, содержащую имя переменной в этот командлет.

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

PSVariable

По умолчанию этот командлет возвращает объект AutomationPSVariable для каждой переменной, которую он получает. Тип объекта зависит от переменной.

Object[]

При указании параметра ValueOnly и значения указанной переменной является коллекцией, этот командлет возвращает [System.Object[]]. Это поведение предотвращает обработку значений переменной в течение одного раза в обычной операции конвейера. Решение для принудительного перечисления коллекций заключается в том, чтобы заключить команду Get-Variable в скобки.

Примечания

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

  • Все платформы:

    • gv
  • Этот командлет не управляет переменными среды. Для управления переменными среды можно использовать поставщик среды.