【发布时间】:2021-02-13 02:57:36
【问题描述】:
我正在尝试自动化备份脚本,但我使用的云备份提供商的 CLI 工具优化不佳。
首次启动时,预计会运行,然后从标准输入获取用户输入。
示例:
c:/backup> jotta.exe login
accept licence (y/n):
然后:
enter token:
如果最初的开发人员在运行程序时将这些作为参数/标志进行访问,那么最好的解决方案是,但不幸的是,情况并非如此。
有什么方法可以将“下一个输入”传递给程序或使用 PowerShell 将参数队列传递给程序?
【问题讨论】:
-
PowerShell 不控制可执行文件,它会通过调用 cmd.exe 来运行它们并由它们接管。如果提供程序确实允许传递输入,则无法通过 PowerShell 本地完成。您唯一的选择是使用 Sendkeys 到 cmd.exe 窗口。注意:虽然 sendkeys 是一个东西,但它也不是没有问题。威胁,性能方面,它可以/将更慢或更快。
标签: windows powershell