Clear-Variable
刪除變數的值。
語法
Clear-Variable
[-Name] <String[]>
[-Include <String[]>]
[-Exclude <String[]>]
[-Force]
[-PassThru]
[-Scope <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Clear-Variable Cmdlet 會刪除儲存在變數中的數據,但不會刪除變數。 因此,變數的值是 NULL (空白)。 如果變數具有指定的數據或物件類型,這個 Cmdlet 會保留儲存在變數中的物件類型。
範例
範例 1:移除以搜尋字串開頭的全域變數值
PS C:\> Clear-Variable my* -Scope Global
此命令會移除具有開頭為 my 之名稱的全域變數值。
範例 2:清除子範圍中的變數,但不清除父範圍
PS C:\> $a=3
PS C:\> &{ Clear-Variable a }
PS C:\> $a
3
這些命令示範清除子範圍中的變數不會清除父範圍中的值。 第一個命令會將變數的值設定為 3 $A。 第二個命令會使用 invoke 運算子 (&) 在新範圍中執行 Clear-Variable 命令。 變數會在子範圍中清除(雖然它不存在),但本機範圍中並未清除。 第三個命令會取得$A的值,顯示值 3 不會受到影響。
範例 3:刪除指定變數的值
PS C:\> 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
指定這個別名有效的範圍。
此參數可接受的值為:
- 全球
- 當地
- 腳本
您也可以使用相對於目前範圍的數位(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 or System.Management.Automation.PSVariable
當您使用 PassThru 參數時,這個 Cmdlet 會產生代表已清除變數的 System.Management.Automation.PSVariable 物件。 否則,此 Cmdlet 不會產生任何輸出。
備註
若要刪除變數及其值,請使用 Remove-Variable 或 Remove-Item。
即使您使用 Force 參數,此 Cmdlet 也不會刪除設定為常數或由系統擁有的變數值。
如果您清除的變數不存在,Cmdlet 就不會有任何作用。 它不會建立具有 Null 值的變數。
您也可以透過內建別名 clv 來參考 Clear-Variable。 如需詳細資訊,請參閱about_Aliases。