回到冒充控制台的换行符

Bla*_*ack 9 windows powershell

是否可以在powershell中为控制台写一个换行符?

我试过echo "\n"但它没有翻译成新的一行,只是输出\n.

Mat*_*att 18

echo在PowerShell中一直使用.它是别名write-output.

这里的问题是你需要使用PowerShell转义字符,这是一个反引号.您可以在TechNet上的about_escape_characters上阅读有关此内容的更多信息.

Windows PowerShell可识别以下特殊字符:

`0    Null
`a    Alert
`b    Backspace
`f    Form feed
`n    New line
`r    Carriage return
`t    Horizontal tab
`v    Vertical tab
Run Code Online (Sandbox Code Playgroud)

所以,如果你只是试图分解输出,你可以简单地使用:

echo "`n"
Run Code Online (Sandbox Code Playgroud)

这将实际输出两个新行,因为发送到Write-Output(请参阅Get-Alias echo)的所有字符串都将以新行终止,无论如何.由于字符串被评估为PowerShell中的表达式""也可以工作,但它只输出一行.

此外,由于此数据正在发送到标准输出流,因此它将由变量和管道捕获.Write-Host如果您希望减轻这种情况,可能是更好的选择.


And*_*huk 11

只要这样做""就会打印一个空行

  • _echo 在 PS 中很少使用_。`Get-Alias echo` 可能会有所不同 (2认同)

小智 9

你应该这样使用:

PS D:\> "This is an `n example!"
This is an
 example!
Run Code Online (Sandbox Code Playgroud)

聚苯乙烯