Clear-Variable
刪除變數的值。
Syntax
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
這些命令示範清除子系範圍中的變數不會清除父系範圍中的值。 第一個命令會將變數的值$A設定為 3。 第二個命令會使用 invoke 運算子 (&) 在新範圍中執行 Clear-Variable 命令。 子系範圍內的變數會被清除 (雖然它不存在),但本機範圍內的變數不會被清除。 第三個命令會取得$A的值,顯示值 3 不會受到影響。
範例 3:刪除指定變數的值
PS C:\> Clear-Variable -Name "Processes"
此命令會刪除名為 Processes 的變數值。 Cmdlet 完成作業之後,名為 Processes 的變數仍然存在,但值為 null。
參數
-Confirm
在執行 Cmdlet 前提示您確認。
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Exclude
指定此 Cmdlet 在作業中省略的項目陣列。 此參數的值會限定 Name 參數。 輸入名稱元素或模式,例如 "s*"。 允許使用萬用字元。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Force
允許 Cmdlet 清除變數,即使它是唯讀的。 即使使用 Force 參數,Cmdlet 仍然無法清除常數。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Include
指定此 Cmdlet 在作業中納入之項目的陣列。 此參數的值會限定 Name 參數。 輸入名稱元素或模式,例如 "s*"。 允許使用萬用字元。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Name
指定要清除之變數的名稱。 允許使用萬用字元。 此為必要參數,但是參數名稱 ("Name") 為選擇性。
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-PassThru
傳回代表您正在使用之項目的物件。 根據預設,此 Cmdlet 不會產生任何輸出。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Scope
指定別名的有效範圍。
此參數可接受的值為:
- 全球
- 本機
- 指令碼
您也可以使用相對於目前範圍的數位, (0 到範圍數目,其中 0 是目前的範圍,而 1 是其父系) 。 Local 為預設值。 如需詳細資訊,請參閱 about_Scopes。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
顯示執行 Cmdlet 後會發生的情況。 Cmdlet 並不會執行。
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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。