powershell 写入输出格式

Fra*_*tal 2 powershell scripting

我发现写入输出行(打印出变量)的格式似乎不一致。我找不到任何有关此的信息,这让我猜测我误解了我所看到的内容。

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- =-=-=-=

陈述:

对于大多数简单的变量,以下内容将起作用:

Write-Output " This $testValue will print just fine."
Run Code Online (Sandbox Code Playgroud)

但是,如果变量是对象的一部分,我需要将 $() 添加到 Write-Output 行:

Write-Output $("Removing old software from directory: " + $site.INSTALLDIR)
Run Code Online (Sandbox Code Playgroud)

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- =-=-=-=

问:上述说法正确吗?

小智 5

当你想打印对象属性值时,应该使用特殊语法 $() ,如下所示:-

Write-Output "Removing old software from directory: $($site.INSTALLDIR)"
Run Code Online (Sandbox Code Playgroud)

如果您还想打印变量名称,请在变量用法之前添加反引号。例子:-

Write-Output "Removing old software from directory (`$site.INSTALLDIR): $($site.INSTALLDIR)"
Run Code Online (Sandbox Code Playgroud)