在powershell中,$$,$?,$ ^代表什么?

Mic*_*cah 9 powershell

在调试器中看到这些变量,我不确定它们是做什么的.

Mat*_*all 14

  • $_ 当前的管道对象; 用于脚本块,过滤器,函数的process子句,where-object,foreach-object和switch
  • $^ 包含输入shell的最后一行的第一个标记
  • $$ 包含最后一行输入shell的最后一个标记
  • $? 包含最后一个语句的成功/失败状态

资料来源:http://www.computerperformance.co.uk/powershell/powershell_variables.htm#%24Dollar_variables_


rav*_*nth 9

Get-Help About_Automatic_Variables
Run Code Online (Sandbox Code Playgroud)

这完全取决于使用PowerShell控制台时创建的自动变量的优点.

  • 这些并非特定于控制台主机. (3认同)

Cod*_*ray 5

在 PowerShell 中,名称前面的美元符号表示变量。所讨论的符号只是 PowerShell 环境提供的变量的特殊情况。它们也称为“自动”变量。进一步来说:

  • $$是一个变量,包含输入到 shell 的最后一行的最后一个标记
    (不包含整个命令)

  • $^是一个变量,包含输入到 shell 的最后一行的第一个标记
    (不包含整个命令)

  • $?是一个包含最后一条语句成功或失败的变量
    False如果前一个命令以错误结束;True否则。)