zhang-snail

导航

 

(9)Powershell中的内置变量

上一节主要介绍了Powershell中变量的定义和使用,以及在变量中包含特殊字符,或是变量在输出时的一些技巧,详细内容参考Here

本节介绍Powershell中的内置变量,或是称为自动变量。

在Powershell命令行中,可以输入 Get-Variable 命令查看Powershell中的所有内置变量

PS C:\WINDOWS\system32> Get-Variable

Name                           Value                                                                                        
----                           -----                                                                                        
$                              Get-Variable                                                                                 
?                              False                                                                                        
^                              PS                                                                                           
a                              abc:def:ghi                                                                                  
args                           {}                                                                                           
arrColors                      {blue, red, green, yellow...}                                                                
b                              abc:def:ghi                                                                                  
ConfirmPreference              High                                                                                         
ConsoleFileName                                                                                                             
DebugPreference                SilentlyContinue                                                                             
Error                          {A positional parameter cannot be found that accepts argument 'Get-Variable'., Cannot find...
ErrorActionPreference          Continue                                                                                     
ErrorView                      NormalView                                                                                   
ExecutionContext               System.Management.Automation.EngineIntrinsics                                                
false                          False                                                                                        
FormatEnumerationLimit         4                                                                                            
HOME                           C:\Users\lixin.zhang                                                                         
Host                           System.Management.Automation.Internal.Host.InternalHost                                      
InformationPreference          SilentlyContinue                                                                             
input                          System.Collections.ArrayList+ArrayListEnumeratorSimple   
......       


下面解释Powershell中经常使用到的内置变量的意思。

Powershell内置变量名称 说明
$$ 当前会话中收到的最后一行中的最后一个令牌(你可以理解为最后一条执行命令)
$? 最后一个操作的执行状态。这个操作可以是Powershell命令,或是调用exe等的返回值,如果最后一个操作成功,则$?包含的值时True,否则包含的值是False。这个内置在判断上一个操作是否成功执行时,非常有用。
$LastExitCode 最后一个基于 Windows 的程序的退出代码。注意区分该变量与$?的区别
$True 包含True,可以在命令或脚本中使用此内置变量来代替字符串"TRUE"。
$False 包含False,可以在命令或脚本中使用此内置变量来代替字符串"FALSE"。
$NULL 包含NULL或空值。可以在命令和脚本中使用此变量表示 NULL,而不是使用字符串"NULL"。如果该字符串转换为非空字符串或非零整数,则可将该字符串解释为TRUE。
$This 在定义脚本属性或脚本方法的脚本块中,$This 变量引用要扩展的对象。这个和高级语言中的this一样,表示的是当前要引用的对象。注意该内置变量与$_的不同。
$PID 当前 Windows PowerShell 会话的进程的进程标识符 (PID),一个整数表示的数字。
$ShellID 当前Shell的标示符,如Microsoft.PowerShell
$PsUICulture 操作系统中当前所用的用户界面 (UI) 区域性的名称(例如,如果是简体中文,则该值是zh-CN)。UI 区域性确定哪些文本字符串用于用户界面元素(如菜单和消息)。这是系统的System.Globalization.CultureInfo.CurrentUICulture.Name 属性的值
$PsCulture 操作系统中当前所用的区域性的名称(例如,如果是简体中文,则该值是zh-CN)。区域性确定数字、货币和日期等项的显示格式。这是系统的 System.Globalization.CultureInfo.CurrentCulture.Name 属性的值。
$PsHome Windows PowerShell 的安装目录的完整路径(通常为 %windir%\System32\WindowsPowerShell\v1.0)。可以在 Windows PowerShell 文件的路径中使用此变量。
$Home 用户的主目录的完整路径,等效于 %homedrive%或%homepath% 环境变量
$Pwd 当前目录的完整路径
$Host 表示 Windows PowerShell 的当前主机应用程序(通俗点讲就是代表当前主机)。可以使用此变量在命令中表示当前主机,或者显示或更改主机的属性,如 $Host.version、$Host.CurrentCulture 或 $host.ui.rawui.setbackgroundcolor("Red")。
$Profile 当前用户和当前主机应用程序的 Windows PowerShell 配置文件的完整路径。可以在命令中使用此变量表示配置文件。

posted on 2024-01-19 15:20  zhang-snail  阅读(39)  评论(0编辑  收藏  举报