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 — родительская область). Локальный — это значение по умолчанию. Дополнительные сведения см. в 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
По умолчанию этот командлет не возвращает выходные данные.
При использовании параметра PassThru этот командлет возвращает объект PSVariable, представляющий чистую переменную.
Примечания
PowerShell включает следующие псевдонимы для Clear-Variable
:
Все платформы:
clv
Чтобы удалить переменную вместе со значением, используйте
Remove-Variable
илиRemove-Item
.Этот командлет не удаляет значения переменных, которые задаются как константы или принадлежат системе, даже если используется параметр Force.
Если переменная, которую вы очищаете, не существует, командлет не действует. Он не создает переменную со значением NULL.