使用 CMD /C Pause 时 Powershell ISE 中断

Powershell ISE breaks when using CMD /C Pause

我是 PowerShell 的新手,正在从批处理过渡,如果我犯了一个愚蠢的错误,请原谅我。我真的很喜欢使用 Powershell ISE。但是在我尝试 运行 的当前脚本中,我使用了 cmd /c pause | Out-Nul 命令,它不允许我继续任何操作,从而破坏了 ISE。

我尝试了很长时间以找到暂停但不显示命令输出的方法,我找到了 cmd /c pause 命令。我可以 运行 在普通的 PowerShell 提示符下它很好,但 ISE 就是没有。

任何人都知道为什么会发生这种情况或 cmd /c pause Out-Nul 的更好替代方案?谢谢,我们非常欢迎任何建议!

  1. Powershell ISE 不重定向 STDIN(暂停需要)。
  2. 不需要为 pause 命令向 cmd 退出。

有关 ISE 无法获取标准输入的详细信息,请参阅 this post 。您不会找到您的具体问题,但问题是完全相同的问题。

在该页面上,您还可以找到 better/native 方法从 powershell 执行 "pause"... (又名 [System.Console]::ReadKey($false)