Clear-Variable
刪除變數的值。
語法
Clear-Variable
[-Name] <String[]>
[-Include <String[]>]
[-Exclude <String[]>]
[-Force]
[-PassThru]
[-Scope <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Clear-Variable
Cmdlet 會刪除儲存在變數中的數據,但不會刪除變數。 因此,變數的值是 NULL (空白)。 如果變數具有指定的數據或物件類型,這個 Cmdlet 會保留儲存在變數中的物件類型。
範例
範例 1:移除以搜尋字串開頭的全域變數值
Clear-Variable my* -Scope Global
此命令會移除具有開頭為 my 之名稱的全域變數值。
範例 2:清除子範圍中的變數,但不清除父範圍
$a=3
&{ Clear-Variable a }
$a
3
這些命令示範清除子範圍中的變數不會清除父範圍中的值。 第一個命令會將變數 $a
的值設定為 3。 第二個命令會使用 invoke 運算子 (&
) 在新範圍中執行 Clear-Variable
命令。 變數會在子範圍中清除(雖然它不存在),但本機範圍中並未清除。
第三個命令會取得的值 $a
,顯示值 3 不會受到影響。
範例 3:刪除指定變數的值
Clear-Variable -Name "Processes"
此命令會刪除名為 Processes 的變數值。 Cmdlet 完成作業之後,名為 Processes 的變數仍然存在,但值為 null。
參數
-Confirm
執行 Cmdlet 之前先提示您確認。
類型: | SwitchParameter |
別名: | cf |
Position: | Named |
預設值: | False |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Exclude
指定此 Cmdlet 在作業中省略的項目陣列。 此參數的值會 限定Name 參數。 輸入名稱專案或模式,例如 「s*」。 允許通配符。
類型: | String[] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | True |
-Force
允許 Cmdlet 清除變數,即使它是唯讀的。 即使使用 Force 參數,Cmdlet 也無法清除常數。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Include
指定此 Cmdlet 包含在作業中的項目陣列。 此參數的值會 限定Name 參數。 輸入名稱專案或模式,例如 「s*」。 允許通配符。
類型: | String[] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | True |
-Name
指定要清除的變數名稱。 允許通配符。 這是必要參數,但參數名稱 Name 是選擇性的。
類型: | String[] |
Position: | 0 |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | True |
-PassThru
會傳回 物件,代表您正在使用的專案。 根據預設,此 Cmdlet 不會產生任何輸出。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Scope
指定這個別名有效的範圍。
此參數可接受的值為:
Global
Local
Script
您也可以使用相對於目前範圍的數位(0 到範圍的數目,其中0是目前的範圍,1是其父系)。 本機是預設值。 如需詳細資訊,請參閱 about_Scopes。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-WhatIf
顯示執行 Cmdlet 後會發生的情況。 未執行 Cmdlet。
類型: | SwitchParameter |
別名: | wi |
Position: | Named |
預設值: | False |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
輸入
None
您無法使用管線將物件傳送至此 Cmdlet。
輸出
None
根據預設,此 Cmdlet 不會傳回任何輸出。
當您使用 PassThru 參數時,這個 Cmdlet 會 傳回代表已清除變數的 PSVariable 物件。
備註
Windows PowerShell 包含下列的 Clear-Variable
別名:
clv
若要刪除變數及其值,請使用
Remove-Variable
或Remove-Item
。即使您使用 Force 參數,此 Cmdlet 不會刪除設定為常數或系統所擁有的變數值。
如果您清除的變數不存在,Cmdlet 就不會有任何作用。 它不會建立具有 Null 值的變數。