首页 > 解决方案 > Powershell中的问题不使用ReadKey

问题描述

在自定义 Powershell 函数中使用以下 LOC 时,该函数本质上是从脚本调用的“等待直到按下任何键” :

[System.Console]::ReadKey($true)

…稍后,特别是当函数返回或完成我得到的上下文时:

KeyChar   Key Modifiers
-------   --- ---------
... Enter         0

问:如何避免这种情况?

标签: powershellconsole.readkeyreadkey

解决方案


我发现解决方案是您需要使用 ReadKey 调用。IE:

  $keypress = [System.Console]::ReadKey($true)

我发现其他一些 PowerShell 调用也是如此,它们执行了一个操作但返回了一个值,例如一个计数,最终显示了返回的值。是的,我收到了未使用的警告,但我忽略了它们。

希望这可以帮助某人。这让我恼火了好几天,直到我意识到这一点。


推荐阅读