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


Clear-Variable

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

Синтаксис

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

Описание

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

Примеры

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

Clear-Variable my* -Scope Global

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

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

$a=3
&{ Clear-Variable a }
$a

3

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

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

Clear-Variable -Name "Processes"

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

Параметры

-Confirm

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

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

-Exclude

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

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

-Force

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

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

-Include

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

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

-Name

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

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

-PassThru

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

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

-Scope

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

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

  • Global
  • Local
  • Script

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

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

-WhatIf

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

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

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

None

Невозможно передать объекты в этот командлет.

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

None

По умолчанию этот командлет не возвращает выходные данные.

PSVariable

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

Примечания

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

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

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

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

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