我在 PowerShell 中观察到一种奇怪的行为。我可以echo hi
但无法echo.
获得换行符:
它做在命令提示符中工作:
一个答案表明该.ps1
文件可能包含 BOM。我尝试将脚本转换为 ANSI,但这没有帮助,并且如您从上面看到的那样,即使没有脚本文件,它仍然会失败。
另一个答案暗示可能存在一个名为的文件echo.
在同一个目录中,但是没有。
我该如何修复echo.
,或者如何回应换行符?
运行时echo
无需.
暂停,也无需提示输入。
运行write hi
成功但是失败了,和一样,和 也是write.
一样。echo.
Write-Output
Write-Host
我曾尝试手动安装最新版本的 PowerShell(v7.4.1)但这没有帮助。
答案1
经过大量搜索,我终于找到了一个可行的解决方案。
这不起作用:
echo "\n"
但这确实:
echo "`n"
我猜测这只echo.
在 中实现cmd
,而不是ps
。
答案2
如果愿意,您还可以使用函数,例如:function echo. { echo "" }
,之后您可以使用“命令” echo.
。