Clear-Variable

刪除變數的值。

語法

Default (預設值)

Clear-Variable
    [-Name] <String[]>
    [-Include <String[]>]
    [-Exclude <String[]>]
    [-Force]
    [-PassThru]
    [-Scope <String>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

Clear-Variable指令長刪除了儲存在變數中的資料,但不會刪除變數本身。 因此,變數的值為 NULL(空)。 若變數有指定的資料或物件型別,此 cmdlet 會保留該變數中物件的型別。

範例

範例 1:移除以搜尋字串開頭的全域變數值

Clear-Variable my* -Scope Global

此指令會移除全域變數名稱以 my 開頭的值。

範例 2:清除子範圍中的變數,但不清除父範圍

$a = 3
&{ Clear-Variable a }
$a
3

這些指令顯示清除子範圍中的變數並不會清除父範圍的值。 第一個指令將變數 $a 值設為 3。 第二個指令使用呼叫運算子(&)在新的作用域中執行該 Clear-Variable 指令。 變數在子作用域中被清除(雖然它不存在),但在本地範圍內則沒有清除。 第三個指令,取值 $a為 ,表示值 3 不受影響。

範例 3:刪除指定變數的值

Clear-Variable -Name "Processes"

此指令刪除名為 Processes 的變數值。 當 cmdlet 完成操作後,名為 Processes 的變數仍然存在,但該值為 null。

參數

-Confirm

在執行 Cmdlet 之前,提示您進行確認。

參數屬性

類型:SwitchParameter
預設值:False
支援萬用字元:False
不要顯示:False
別名:參見

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Exclude

指定一個指令本指令組在操作中省略的項目陣列。 此參數的值用來說明 Name 參數。 輸入名稱專案或模式,例如 「s*」。 允許使用通配符。

參數屬性

類型:

String[]

預設值:None
支援萬用字元:True
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Force

允許指令本清除變數,即使該變數是唯讀。 即使使用 Force 參數,指令匣也無法清除常數。

參數屬性

類型:SwitchParameter
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Include

指定此 cmdlet 在操作中包含的項目陣列。 此參數的值用來說明 Name 參數。 輸入名稱專案或模式,例如 「s*」。 允許使用通配符。

參數屬性

類型:

String[]

預設值:None
支援萬用字元:True
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Name

指定要清除的變數名稱。 允許使用通配符。 此參數為必填條件,但參數名稱 Name 為可選。

參數屬性

類型:

String[]

預設值:None
支援萬用字元:True
不要顯示:False

參數集

(All)
Position:0
必要:True
來自管線的值:False
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-PassThru

返回一個物件,代表您正在處理的項目。 根據預設,此 Cmdlet 不會產生任何輸出。

參數屬性

類型:SwitchParameter
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Scope

指定該別名在何種範圍有效。

此參數可接受的值為:

  • Global
  • Local
  • Script

你也可以用相對於目前範圍的數字(0 乘 scope 數量,0 是目前範圍,1 是父範圍)。 本地是預設。 如需詳細資訊,請參閱 about_Scopes。

參數屬性

類型:String
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-WhatIf

顯示 Cmdlet 執行時會發生什麼事。 指令未執行。

參數屬性

類型:SwitchParameter
預設值:False
支援萬用字元:False
不要顯示:False
別名:威斯康辛

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

CommonParameters

此 cmdlet 支援常見參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters。

輸入

String

Name 參數接受具有 Name 屬性的管線物件的字串輸入。

輸出

None

根據預設,此 Cmdlet 不會傳回任何輸出。

PSVariable

當你使用 PassThru 參數時,這個 cmdlet 會回傳一個 PSVariable 物件,代表已清除的變數。

備註

PowerShell 包含下列 Clear-Variable的別名:

  • 所有平臺:

    • clv
  • 若要刪除變數及其值,請使用 Remove-Variable 或 Remove-Item。

    這個 cmdlet 不會刪除系統中設定為常數或擁有的變數值,即使你使用 Force 參數。

    如果你清除的變數不存在,指令長(cmdlet)就不會生效。 它不會產生 null 值的變數。