PowerShell Here-String保留换行符

Eli*_*gne 5 powershell string-formatting

PowerShell代码:

$string = @'
Line 1

Line 3
'@
$string
Run Code Online (Sandbox Code Playgroud)

输出:

Line 1
Line 3
Run Code Online (Sandbox Code Playgroud)

但我希望它输出:

Line 1

Line 3
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

CB.*_*CB. 5

在ISE工作正常和script工作.我不记得在哪里,但我读到这是控制台主机代码中的一个错误,当以交互方式输入here-string时,空行将被丢弃.目前我无法测试是否在Powershell V.3.0控制台中修复了bug.

链接到该问题:http://connect.microsoft.com/PowerShell/feedback/details/571644/a-here-string-cannot-contain-blank-line

解决方法:添加反引号`

$string = @"
Line 1
`
Line 3
"@
Run Code Online (Sandbox Code Playgroud)

  • 谢谢。我可以确认这个错误仍然存​​在于 PS V3 的控制台中 (2认同)