如何在Powershell中自动回答"是"?

Fro*_*own 9 powershell

如何在PowerShell会话中输入"是"作为交互式问题的答案?我知道,在Bash中,Yes是提示回答"是"的工具.在我的情况下,我无法抑制提示.

我正在运行的脚本停在

如果您想继续,请回答"是":

powershell如何运行脚本并在提示时"回答"是?

Don*_*tor 11

使用 ECHO 对我有用。我在 Powershell 脚本中运行 RSKeyMgmt.exe,它提示 Yes(Y)/No(N)。所以当我做

ECHO Y | RSKeyMgmt.exe...

它没有提示问题并且命令正确执行。

所以我认为也ECHO 'someoption'应该适用于其他情况。


JPB*_*anc 8

您可以测试这些旧时尚方法:

Cmd /c "GpUpdate.exe /FORCE <C:\temp\response.txt"

ECHO 'Y' | GpUpdate.exe /FORCE

Get-Content "C:\temp\response.txt" | GpUpdate.exe /FORCE
Run Code Online (Sandbox Code Playgroud)


小智 7

受其他答案的启发,这是我的示例:

ECHO Y | powershell Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
Run Code Online (Sandbox Code Playgroud)


AJa*_*810 6

我也遇到了同样的问题。我尝试的解决方案包括:

  • 回声'Y' |
  • 命令名称 -Force
  • $ConfirmPreference = '无'

然而,他们似乎都没有成功。

最终解决问题的是:

Powershell-Cmdlet -Confirm:$false
Run Code Online (Sandbox Code Playgroud)

它在命令期间禁止所有确认提示,并且将在没有任何确认的情况下处理命令。