使用变量存储对象Using variables to store objects
可以通过键入有效的变量名称来创建变量:
此示例不会返回任何结果,因为 不具有值。你可以在同一步骤中创建变量并为其赋值。如果不存在,PowerShell 将仅创建变量。否则,它将指定的值分配给现有变量。下面的示例将当前位置存储在变量 $loc
中:
键入此命令时,PowerShell 不会显示任何输出。PowerShell 将“Get-Location”的输出发送到 $loc
。在 PowerShell 中,未分配或未重定向的数据将发送到屏幕。键入 $loc
将显示当前位置:
PS> $loc
Path
PowerShell 提供多个用以操作变量的命令。你可以通过键入以下内容看到可读形式的完整列表:
Get-Command -Noun Variable | Format-Table -Property Name,Definition -AutoSize -Wrap
PowerShell 还会创建系统定义的多个变量。可以使用 Remove-Variable
cmdlet 来删除当前会话中所有不受 PowerShell 控制的变量。键入以下命令来清除所有变量:
运行上述命令后,Get-Variable
cmdlet 显示 PowerShell 系统变量。
PowerShell 可以使用任何 Windows 进程可用的相同环境变量,其中包括 cmd.exe。这些变量通过名为 env:
的驱动器公开。可以通过键入以下命令查看这些变量:
Get-ChildItem env:
标准 *-Variable
cmdlet 未设计为使用环境变量。使用 env:
驱动器前缀访问环境变量。例如,cmd.exe 中的 %SystemRoot% 变量包含操作系统的根目录名称。在 PowerShell 中,使用 $env:SystemRoot
可访问相同的值。
PS> $env:SystemRoot
还可以从 PowerShell 内部创建和修改环境变量。PowerShell 中的环境变量遵循操作系统中其他地方使用的环境变量的相同规则。下面的示例创建一个新的环境变量: