Clear-Variable

Удаляет значение переменной.

Синтаксис

Clear-Variable
     [-Name] <String[]>
     [-Include <String[]>]
     [-Exclude <String[]>]
     [-Force]
     [-PassThru]
     [-Scope <String>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]

Описание

Командлет Clear-Variable удаляет данные, хранящиеся в переменной, но не удаляет переменную. В результате переменная получает значение NULL (пустое). Если переменная имеет указанные данные или тип объекта, этот командлет сохраняет тип объекта, хранящегося в переменной.

Примеры

Пример 1. Удаление значения глобальных переменных, которые начинаются со строки поиска

PS C:\> Clear-Variable my* -Scope Global

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

Пример 2. Очистка переменной в дочернем область, но не родительской область

PS C:\> $a=3
PS C:\> &{ Clear-Variable a }
PS C:\> $a
3

Эти команды показывают, что при очистке переменной в дочерней области значение в родительской области не удаляется. Первая команда задает для переменной $A значение 3. Вторая команда использует оператор invoke (&) для выполнения команды Clear-Variable в новом область. В результате в дочерней области переменная очищается (хотя она и не существовала), а в локальной — нет. Третья команда, которая получает значение $A, показывает, что значение 3 не затрагивается.

Пример 3. Удаление значения указанной переменной

PS C:\> Clear-Variable -Name "Processes"

Эта команда удаляет значение переменной с именем Processes. После завершения операции командлетом переменная с именем Processes по-прежнему существует, но имеет значение NULL.

Параметры

-Confirm

Запрос подтверждения перед выполнением командлета.

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

-Exclude

Указывает массив элементов, которые этот командлет пропускает в операции. Значение этого параметра квалифифициирует параметр Name . Введите часть имени или шаблон, например "s*". Разрешено использовать подстановочные знаки.

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

-Force

Позволяет командлету очистить переменную, даже если она доступна только для чтения. Даже при использовании параметра Force командлет не может очистить константу.

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

-Include

Указывает массив элементов, которые этот командлет включает в операцию. Значение этого параметра квалифифициирует параметр Name . Введите часть имени или шаблон, например "s*". Разрешено использовать подстановочные знаки.

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

-Name

Указывает имя переменной, которую нужно очистить. Разрешено использовать подстановочные знаки. Этот параметр обязателен, но его имя (Name) можно не указывать.

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

-PassThru

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

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

-Scope

Задает область действия псевдонима.

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

  • Глобальный
  • Local
  • Скрипт

Можно также использовать число относительно текущего область (от 0 до числа областей, где 0 — это текущая область а 1 — ее родительская). По умолчанию используется значение Local. Дополнительные сведения см. в разделе about_Scopes.

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

-WhatIf

Показывает, что произойдет при запуске командлета. Командлет не выполняется.

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

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

None

Нельзя передать объекты в этот командлет с помощью конвейера.

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

None or System.Management.Automation.PSVariable

При использовании параметра PassThru этот командлет создает объект System.Management.Automation.PSVariable , представляющий очищенную переменную. В противном случае командлет не формирует никаких выходных данных.

Примечания

  • Чтобы удалить переменную вместе со значением, используйте командлеты Remove-Variable или Remove-Item.

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

    Если очищаемой переменной не существует, этот командлет не выполняет никаких действий. Он не создает переменную со значением NULL.

    Вы также можете ссылаться на Clear-Variable по встроенному псевдониму clv. Подробнее см. в разделе "about_Aliases".