windows - 如何在powershell中自动对多个提示回答是

标签 windows powershell

我正在尝试在以下命令中自动回答多个"is"
安装-模块-名称 PSWindowsUpdate -Force -Confirm:$false

我检查了下面的 url,它只回答一个 y,但尝试添加 2 'y',如下所示,它不起作用。
有什么方法可以做到吗?

cmd/c 回显 y y| powershell“将提示的命令”

Automatically confirm Yes to powershell script

最佳答案

来自 PowerShell :

, 'y' * 2  | powershell -c 'read-host one; read-host two'
, 'y' * 2构造一个由 'y' 组成的 2 元素数组字符串(相当于 'y', 'y' )。

用作管道输入 对于外部程序(在这种情况下恰好是另一个 PowerShell 进程), PowerShell 发送每个元素后跟一个换行符 ,每个都回答 PowerShell 代码中的一个提示。

来自 cmd.exe :
(echo y& echo y) | powershell -c "read-host one; read-host two"

注:使用 (...)在管道中显然总是在每个 echo 后面附加一个空格。命令的输出 ,因此 PowerShell 中的每个提示都会收到 'y <Enter>' ;这应该不是问题,但如果是,您可以使用中间临时文件:(echo y& echo y) >tmp.txt & type tmp.txt | powershell ... & del tmp.txt

关于windows - 如何在powershell中自动对多个提示回答是,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61180498/

相关文章:

python - 在 Windows 中从命令行运行稳定扩散时出错

java - 如何创建将安装可执行 Jar 的安装文件

windows - 使用 Powershell 在 Active Directory 中更新 Active Directory 用户属性

.net - 性能计数器在 ReadOnly=false 时显示不同的值

python - Pip 安装在 Windows 上引发 UnicodeDecodeError。使固定?

windows - 如何通过powershell创建azure虚拟机后运行Windows更新?

windows - 用于 Windows 网络的 Docker

powershell - 我想通过命令行使用自定义帐户验证应用程序池身份

regex - 在 powershell 中按正则表达式内的命名捕获组排序

azure 管道-根据触发的分支设置变量