PowerShell变量

PowerShell变量

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

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

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

下面是一些有效和无效变量的示例:

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

1. 创建变量

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

以下是一些创建变量的示例:

示例1:

$vrb = 122

本示例中的命令将整数值122分配给变量$vrb

示例2:

$mySubject = "PowerShell"

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

2. 打印变量的值

要显示变量的值,只需要在美元符号$后跟变量的名称。

示例:

在本示例中,第二条命令$str将变量的值显示为:"Welcome2XNTutor"

3. 修改变量的值

如果要更改变量的值,那么可以重新为变量分配一个新值。

示例:

上面屏幕中命令显示$number变量的值。

以下屏幕中将更改$number变量的值,并显示$number变量的新值。

4. 删除变量

如果要删除变量的值,可使用clear-variable cmdlet,或将变量的值设置为$null

示例:

5. 变量类型

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

变量类型

6. 变量作用域

PowerShell变量可以具有“作用域”,作用域确定了变量在何处可用。 要表示变量的作用域,请使用以下语法:

$[<scope-modifier>:]<name> = <value>

Windows PowerShell支持变量的以下范围修饰符:

  • 全部变量:全局变量是在任何地方都有效的变量,即使在脚本和函数之外也是如此。要表示全局变量,请使用以下格式:

    $global: variable = <value>
    
  • 局部变量:可以在本地范围内创建的那些变量。默认情况下,变量具有局部作用域。 要表示局部变量,请使用以下格式:

    $variable = <value>
    
  • 脚本变量: 在脚本过程中创建的那些变量。 这些变量仅可用于创建它们的脚本。 要表示脚本变量,请使用以下格式:

    $script: variable = <value>
    

7. 变量类型

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

  • 用户创建的变量。
  • 自动变量。
  • 首选项变量。

用户创建的变量

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

自动变量

存储PowerShell状态的那些变量称为自动变量。 PowerShell创建此类型的变量,然后由PowerShell维护(更改)其值以保持其准确性。 用户无法更改这些变量的值。

首选项变量

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


目录