Get-Variable
取得目前控制台中的變數。
語法
Get-Variable
[[-Name] <String[]>]
[-ValueOnly]
[-Include <String[]>]
[-Exclude <String[]>]
[-Scope <String>]
[<CommonParameters>]
Description
Cmdlet 會 Get-Variable
取得目前控制台中的PowerShell變數。
您可以藉由指定 ValueOnly 參數來擷取變數的值,而且您可以篩選依名稱傳回的變數。
範例
範例 1:依字母取得變數
此命令會取得名稱開頭為字母 m 的變數。 此命令也會取得變數的值。
Get-Variable m*
範例 2:依字母取得變數值
此命令只會取得名稱開頭為 m 的變數值。
Get-Variable m* -ValueOnly
範例 3:以兩個字母取得變數
此命令會取得以字母 M 或字母 P 開頭之變數的相關信息。
Get-Variable -Include M*,P*
範例 4:依範圍取得變數
第一個命令只會取得本機範圍中定義的變數。
它相當於 Get-Variable -Scope Local
,而且可以縮寫為 gv -s 0
。
第二個命令會 Compare-Object
使用 Cmdlet 來尋找父範圍 (範圍 1) 中定義的變數,但只能在本機範圍 (範圍 0) 中顯示。
Get-Variable -Scope 0
Compare-Object (Get-Variable -Scope 0) (Get-Variable -Scope 1)
參數
-Exclude
指定此 Cmdlet 從作業中排除的項目陣列。 允許通配符。
類型: | String[] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | True |
-Include
指定 Cmdlet 將採取動作的項目數組,排除所有其他專案。 允許通配符。
類型: | String[] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | True |
-Name
指定變數的名稱。
允許通配符。
您也可以使用管線將變數名稱傳送至 Get-Variable
。
類型: | String[] |
Position: | 0 |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | True |
-Scope
指定範圍中的變數。此參數可接受的值為:
- 全球
- 本機
- 指令碼
- 相對於目前範圍的數位(0 到範圍的數目,其中0是目前的範圍,1是其父系)
本機 是預設值。 如需詳細資訊,請參閱 about_Scopes。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-ValueOnly
表示此 Cmdlet 只會取得變數的值。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
輸入
您可以使用管線將包含變數名稱的字串傳送至此 Cmdlet。
輸出
根據預設,此 Cmdlet 會針對它取得的每個變數傳 回 AutomationPSVariable 物件。 物件類型取決於變數。
Object[]
當您指定 ValueOnly 參數,而指定的變數值是集合時,這個 Cmdlet 會傳 [System.Object[]]
回 。 此行為可防止一般管線作業一次處理變數的值。 強制集合列舉的因應措施是將 Get-Variable
命令括在括弧中。
備註
Windows PowerShell 包含下列的 Get-Variable
別名:
gv
此 Cmdlet 不會管理環境變數。 若要管理環境變數,您可以使用環境變數提供者。