刪除變數的值。
語法
Clear-Variable [-Name] <string[]> [-Exclude <string[]>] [-Force] [-Include <string[]>] [-PassThru] [-Scope <string>] [-Confirm] [-WhatIf] [<CommonParameters>]
描述
Clear-Variable Cmdlet 會刪除變數中儲存的資料,但是不刪除變數。結果,變數的值是 Null (空的)。如果變數具有指定的資料或物件類型,Clear-Variable 會保留變數中儲存的物件類型。
參數
-Exclude <string[]>
忽略指定的項目。此參數的值用於限定 Name 參數。輸入名稱元素或模式,例如 "s*"。允許使用萬用字元。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-Force
允許此 Cmdlet 清除變數,即使它是唯讀的亦然。即便使用 Force 參數,此 Cmdlet 也無法清除常數。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-Include <string[]>
只清除指定的項目。此參數的值用於限定 Name 參數。輸入名稱元素或模式,例如 "s*"。允許使用萬用字元。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-Name <string[]>
指定要清除資料的變數名稱。允許使用萬用字元。此參數為必要參數,但參數名稱 ("Name") 則為選擇性。
必要? |
true |
位置? |
1 |
預設值 |
|
接受管線輸入? |
true (ByPropertyName) |
接受萬用字元? |
false |
-PassThru
傳回代表已清除之變數的物件。根據預設,此 Cmdlet 不會產生任何輸出。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-Scope <string>
指定此別名仍屬有效的範圍。有效的值包括 "Global"、"Local"、"Script" 或相對於目前範圍的數字 (從 0 到範圍總數,其中 0 代表目前範圍,1 代表其上層)。預設值為 "Local"。如需詳細資訊,請參閱 about_Scopes。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-Confirm
在執行命令前先提示確認。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-WhatIf
說明執行命令時將會發生何種情況,但不會實際執行命令。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
<CommonParameters>
這個 Cmdlet 支援一般參數:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。如需詳細資訊,請參閱 about_Commonparameters.
輸入和輸出
輸入型別是可經由管道輸出至 Cmdlet 的物件型別。傳回型別則是 Cmdlet 所傳回的物件型別。
輸入 |
None 您無法經由管道將物件輸出至 Clear-Variable。 |
輸出 |
None 或 System.Management.Automation.PSVariable 當您使用 PassThru 參數時,Clear-Variable 會產生代表已清除之變數的 System.Management.Automation.PSVariable 物件。否則,這個 Cmdlet 不會產生任何輸出。 |
附註
若要一併刪除變數及變數的值,請使用 Remove-Variable 或 Remove-Item。
即使您使用 -Force 參數,Clear-Variable 也不會刪除設定為常數或系統所擁有之變數的值。
如果您要清除的變數不存在,cmdlet 就沒有作用。它不會建立含有 Null 值的變數。
您也可以利用內建的別名 "clv" 來參照 Clear-Variable。如需詳細資訊,請參閱 about_Aliases。
範例 1
C:\PS>clear-variable my* -global 描述 ----------- 這個命令刪除以 "my" 開頭之全域變數的值。
範例 2
C:\PS>$a=3 C:\PS>&{ clear-variable a } C:\PS>$a 3 描述 ----------- 這些命令示範,清除子範圍中的變數並不會清除父範圍中的值。第一個命令會將變數 $a 的值設定為 "3"。第二個命令會使用呼叫運算子 (&),在新的範圍中執行 Clear-Variable 命令。此變數在子範圍中被清除 (雖然它不存在),但是在區域範圍中並沒有被清除。第三個命令取得 $a 的值,顯示 "3" 這個值並未受影響。
範例 3
C:\PS>clear-variable -name processes 描述 ----------- 這個命令刪除 $processes 變數的值。$processes 變數仍然存在,但是值變成 Null。
請參閱