PowerShell特殊变量存储有关PowerShell的信息。这些也称为自动变量。以下是自动变量的列表-
操作员 | 描述 |
---|---|
$$ | 代表会话收到的最后一行中的最后一个令牌。 |
$? | 表示最后一个操作的执行状态。如果最后一个操作成功,则包含TRUE,如果失败,则包含FALSE。 |
$ ^ | 代表会话收到的最后一行中的第一个令牌。 |
$ _ | 与$ PSItem相同。在管道对象中包含当前对象。您可以在对管道中的每个对象或选定对象执行操作的命令中使用此变量。 |
$ ARGS | 表示传递给函数,脚本或脚本块的未声明参数和/或参数值的数组。 |
$ CONSOLEFILENAME | 代表会话中最近使用的控制台文件(.psc1)的路径。 |
$ ERROR | 表示代表最新错误的错误对象数组。 |
$ EVENT | 表示一个PSEventArgs对象,该对象表示正在处理的事件。 |
$事件 | 表示一个对象,该对象表示从正在处理的事件的EventArgs派生的第一个事件参数。 |
$ EVENTSUBSCRIBER | 表示PSEventSubscriber对象,该对象表示正在处理的事件的事件订阅者。 |
$执行上下文 | 表示一个EngineIntrinsics对象,该对象代表PowerShell主机的执行上下文。 |
$假 | 代表FALSE。您可以使用此变量在命令和脚本中表示FALSE,而不是使用字符串“ false”。 |
$ FOREACH | 表示ForEach循环的枚举数(而不是结果值)。您可以在$ ForEach变量的值上使用枚举数的属性和方法。 |
$ HOME | 代表用户主目录的完整路径。 |
$ HOST | 表示一个对象,该对象表示PowerShell的当前主机应用程序。 |
$ INPUT | 表示一个枚举器,它枚举传递给函数的所有输入。 |
$ LASTEXITCODE | 表示运行的最后一个基于Windows的程序的退出代码。 |
$ MATCHES | $ Matches变量可与-match和-notmatch运算符一起使用。 |
$ MYINVOCATION | $ MyInvocation仅填充脚本,函数和脚本块。$ MyInvocation自动变量的PSScriptRoot和PSCommandPath属性包含有关调用程序或调用脚本(而不是当前脚本)的信息。 |
$ NESTEDPROVTLEVEL | 表示当前提示级别。 |
$ NULL | $ null是一个包含NULL或空值的自动变量。您可以使用此变量来表示命令和脚本中缺少或未定义的值。 |
$ PID | 表示托管当前PowerShell会话的进程的进程标识符(PID)。 |
$ PROFILE | 代表当前用户和当前主机应用程序的PowerShell配置文件的完整路径。 |
$ PSCMDLET | 表示一个对象,该对象表示正在运行的cmdlet或高级功能。 |
$ PSCOMMANDPATH | 表示正在运行的脚本的完整路径和文件名。 |
$文化 | 表示操作系统中当前使用的区域性名称。 |
$ PSDEBUGCONTEXT | 调试时,此变量包含有关调试环境的信息。否则,它包含一个NULL值。 |
$ PSHOME | 表示PowerShell安装目录的完整路径。 |
$ PSITEM | 与$ _相同。在管道对象中包含当前对象。 |
$ PSSCRIPTROOT | 表示从中运行脚本的目录。 |
$ PSSENDERINFO | 表示有关启动PSSession的用户的信息,包括用户身份和原始计算机的时区。 |
$文化 | 表示操作系统中当前使用的用户界面(UI)文化的名称。 |
$ PSVERSIONTABLE | 表示一个只读哈希表,该哈希表显示有关当前会话中运行的PowerShell版本的详细信息。 |
$ SENDER | 表示生成此事件的对象。 |
$壳 | 表示当前外壳的标识符。 |
$堆栈跟踪 | 表示最近错误的堆栈跟踪。 |
$ THIS | 在定义脚本属性或脚本方法的脚本块中,$ This变量引用正在扩展的对象。 |
$ TRUE | 代表TRUE。您可以使用此变量在命令和脚本中表示TRUE。 |