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

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

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

Локальный — это значение по умолчанию. Дополнительные сведения см. в 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
  • Этот командлет не управляет переменными среды. Для управления этими переменными можно использовать поставщика переменных среды.