Powershell 选择而不按回车键?

Powershell 选择而不按回车键?,powershell,choice,Powershell,Choice,是否可以在用户只按数字而无需按enter键的情况下进行选择对话 $options = [System.Management.Automation.Host.ChoiceDescription[]] @("&All", "&Client", "&Server") $opt = $host.UI.PromptForChoice("Your Choice", "Files", $Options, 0) 在本例中,用户必须按A、Enter键。我希望用户只需按A键。您可以使用[s

是否可以在用户只按数字而无需按enter键的情况下进行选择对话

$options = [System.Management.Automation.Host.ChoiceDescription[]] @("&All", "&Client", "&Server")
$opt = $host.UI.PromptForChoice("Your Choice", "Files", $Options, 0)

在本例中,用户必须按A、Enter键。我希望用户只需按A键。

您可以使用
[system.console]::Readkey()
您可以使用
[system.console]::Readkey()
也许令人惊讶的是,您可以使用:


也许令人惊讶的是,您可以使用:


我怎样才能把它和“PromptForChoice”结合起来呢?你能修改我的例子吗?谢谢。在ISE中,它工作得很好:)当你想要构建一种菜单时,你可以看看switch语句来确定按下的键:$a=[System.Console]::ReadKey()开关($a.key){a,a{reaction\u on_a}c,c{do\u something\u other}},我如何将其与“PromptForChoice”结合起来?你能修改我的例子吗?谢谢。在ISE中,它工作得很好:)当你想构建一种菜单时,你可以看看switch语句来确定按下的键:$a=[System.Console]::ReadKey()开关($a.key){a,a{reaction_on_a}c,c{do_something_other}为什么用户是否必须按Enter键很重要?@bill:这对我很重要。按enter键可以进行时间扩展为什么用户必须按enter键与否有关系?比尔:对我来说很重要。按enter键可以更改时间expansive@etalon11两者都不是-它是Windows附带的外部可执行文件。这有关系吗?所以我必须试一试。感谢您注意到
choice
只能在标准PowerShell控制台(不是ISE等)中工作。@etalon11两者都不是-它是Windows附带的外部可执行文件。这有关系吗?所以我必须试一试。感谢您注意,
choice
只能在标准PowerShell控制台(而不是ISE等)中工作。
choice /c acs /m 'Your Choice'
switch ($LASTEXITCODE) {
  1 { 'You chose "All".' }
  2 { 'You chose "Client".' }
  3 { 'You chose "Server".' }
}