echo. 未被识别为 cmdlet 的名称

echo. 未被识别为 cmdlet 的名称

我在 PowerShell 中观察到一种奇怪的行为。我可以echo hi但无法echo.获得换行符:

在命令提示符中工作:

一个答案表明该.ps1文件可能包含 BOM。我尝试将脚本转换为 ANSI,但这没有帮助,并且如您从上面看到的那样,即使没有脚本文件,它仍然会失败。

另一个答案暗示可能存在一个名为的文件echo.在同一个目录中,但是没有。

我该如何修复echo.,或者如何回应换行符?

运行时echo无需.暂停,也无需提示输入。

运行write hi成功但是失败了,和一样,和 也是write.一样。echo.Write-OutputWrite-Host

我曾尝试手动安装最新版本的 PowerShell(v7.4.1)但这没有帮助。

答案1

经过大量搜索,我终于找到了一个可行的解决方案。

这不起作用:

echo "\n"

但这确实:

echo "`n"

我猜测这只echo.在 中实现cmd,而不是ps

答案2

如果愿意,您还可以使用函数,例如:function echo. { echo "" },之后您可以使用“命令” echo.

相关内容