Get-Variable
获取当前控制台中的变量。
语法
Default (默认值)
Get-Variable
    [[-Name] <String[]>]
    [-ValueOnly]
    [-Include <String[]>]
    [-Exclude <String[]>]
    [-Scope <String>]
    [<CommonParameters>]
说明
              Get-Variable cmdlet 获取当前控制台中的 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[] | 
| 默认值: | None | 
| 支持通配符: | True | 
| 不显示: | False | 
参数集
(All)
| Position: | Named | 
| 必需: | False | 
| 来自管道的值: | False | 
| 来自管道的值(按属性名称): | False | 
| 来自剩余参数的值: | False | 
-Include
指定 cmdlet 将对其执行操作的项数组,不包括所有其他项。 允许使用通配符。
参数属性
| 类型: | String[] | 
| 默认值: | None | 
| 支持通配符: | True | 
| 不显示: | False | 
参数集
(All)
| Position: | Named | 
| 必需: | False | 
| 来自管道的值: | False | 
| 来自管道的值(按属性名称): | False | 
| 来自剩余参数的值: | False | 
-Name
指定变量的名称。
允许使用通配符。
还可以通过管道将变量名称传递给 Get-Variable。
参数属性
| 类型: | String[] | 
| 默认值: | None | 
| 支持通配符: | True | 
| 不显示: | False | 
参数集
(All)
| Position: | 0 | 
| 必需: | False | 
| 来自管道的值: | True | 
| 来自管道的值(按属性名称): | True | 
| 来自剩余参数的值: | False | 
-Scope
指定作用域中的变量。此参数的可接受值为:
- 全球
- 本地
- 脚本
- 相对于当前范围的数字(0 到范围的数目,其中 0 是当前范围,1 是它的父范围)
本地 为默认值。 有关详细信息,请参阅 about_Scopes。
参数属性
| 类型: | String | 
| 默认值: | None | 
| 支持通配符: | False | 
| 不显示: | False | 
参数集
(All)
| Position: | Named | 
| 必需: | False | 
| 来自管道的值: | False | 
| 来自管道的值(按属性名称): | False | 
| 来自剩余参数的值: | False | 
-ValueOnly 
		指示此 cmdlet 仅获取变量的值。
参数属性
| 类型: | SwitchParameter | 
| 默认值: | None | 
| 支持通配符: | 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
可以通过管道将包含变量名称的字符串传递给此 cmdlet。
输出
PSVariable
默认情况下,此 cmdlet 为它获取的每个变量返回 AutomationPSVariable 对象。 对象类型取决于变量。
Object
当指定 ValueOnly 参数,并且指定的变量的值是集合时,此 cmdlet 将返回 [System.Object[]]。 此行为可防止正常管道操作一次处理变量的值。 强制集合枚举的解决方法是将 Get-Variable 命令括在括号中。
备注
PowerShell 包含以下与 Get-Variable相关的别名:
- 所有平台: - gv
 
- 此 cmdlet 不管理环境变量。 若要管理环境变量,可以使用环境提供程序。