PowerShell 变量

2025年3月17日 | 阅读 3 分钟

变量是 Windows PowerShell 的基本组成部分。我们可以在 PowerShell 变量中存储所有类型的值。例如,我们可以存储命令的结果,以及表达式和命令中使用的元素,例如路径、名称、设置和值。 实际上,它们专门存储对象,即 Microsoft .NET Framework 对象。

变量是存储数据的内存单元。在 Windows PowerShell 中,变量的名称以美元符号 ($) 开头,例如 $process, $a。 变量的名称不区分大小写,并且可以包含空格和特殊字符。 默认情况下,PowerShell 中所有变量的值为 $null

注意: 在 Windows PowerShell 中,特殊字符具有特殊含义。 如果我们在变量名中使用特殊字符,我们需要将它们用大括号 {} 括起来。

有效的变量名无效的变量名
$myVariable,myVariable,
$MyVariable_1,$my-variable,
{my-variable}$my variable

创建变量

我们使用赋值运算符 (=) 将指定的值分配给变量。 我们可以通过为其赋值来创建变量。

以下示例用于创建变量

示例 1

此示例中的命令将整数值 201 分配给名为 $vrb 的变量。

示例 2

此示例中的命令创建一个名为 $mySubject 的变量,并为其分配一个字符串值。 在此示例中,$mySubject 是一个字符串对象。

打印变量的值

要显示变量的值,请键入变量的名称,后跟一个美元符号 ' $'。

以下示例用于打印变量的值

示例

PowerShell Variables

此示例中的第二个命令 $a 将变量的值显示为 “javatpoint”。

更改变量的值

如果要更改变量的值,请将新值分配给该变量。

示例

PowerShell Variables

上图中的 $PowerShell 命令显示了 $PowerShell 变量的值。

下图中的命令更改了 $PowerShell 变量的值,并显示了 $PowerShell 变量的新值。

PowerShell Variables

删除变量

如果要删除变量的值,请使用 clear-variable cmdlet,或将其值更改为 $null

示例

PowerShell Variables
PowerShell Variables

变量的类型

如果要查找变量的类型,可以使用 GetType() 方法。

PowerShell Variables

变量范围

PowerShell 变量可以具有一个“作用域”,它决定了该变量的可用位置。 要表示一个变量,请使用以下语法

Windows PowerShell 支持以下变量的作用域修饰符

  • 全局: 全局变量是那些在任何地方都有效的变量,即使在脚本和函数之外。 要表示全局变量,请使用以下格式
  • 本地: 可以在本地作用域中创建的变量。 默认情况下,变量具有本地作用域。 要表示本地变量,请使用以下格式
  • 脚本: 在脚本期间创建的变量。 这些变量仅对创建它们的脚本可用。 要表示脚本变量,请使用以下格式

变量的类型

以下是 Windows PowerShell 中不同类型的变量

  1. 用户创建的变量。
  2. 自动变量。
  3. 首选项变量。

用户创建的变量

由用户创建和维护的变量称为用户创建的变量。 我们在 PowerShell 命令行中创建的变量仅在 PowerShell 窗口打开时才存在。 当 PowerShell 窗口关闭时,这些变量也会被删除。 我们可以在脚本中使用本地、全局或脚本作用域来创建变量。

自动变量

存储 PowerShell 状态的变量称为自动变量。 PowerShell 创建了这种类型的变量,并且它们的值由 PowerShell 更改以保持其准确性。 用户无法更改这些变量的值。

偏好变量

首选项变量是存储 Windows PowerShell 用户首选项的变量。 Windows PowerShell 创建了这种类型的变量,并且它们使用默认值填充。 任何用户都可以更改首选项变量的值。


下一主题自动变量