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


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

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

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Include

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

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Name

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

Type:String[]
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:True

-Scope

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

  • Глобальный
  • Локальное
  • Сценарий
  • Номер относительно текущей области (от 0 до количества областей, где 0 — это текущая область, а 1 — ее родительская область).

Значение по умолчанию — Local. Дополнительные сведения см. в разделе about_Scopes.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ValueOnly

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

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

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

String

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

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

PSVariable

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

Object[]

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

Примечания

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

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

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