从groovy我需要运行一个我没写过的shell命令。此命令提示用户输入各种输入值。所以我试图弄清楚如何响应groovy脚本中的提示。到目前为止,我有:
Process proc = command.execute()
parms.each() {value ->
proc << String.valueOf(value) + "\n"
}
StringBuilder output = new StringBuilder()
proc.waitForProcessOutput(output, output)
return output.toString()
这适用于该命令启动并将parms传递给它,除了所有parms都从命令传递给第一个提示符。
我是groovy的新手,所以我无法弄清楚如何处理这个问题。理想情况下,我希望能够获取每个提示并给出匹配的答复,而不是这种方法对提示顺序做出了一个脆弱的假设。
有没有人在使用groovy之前做过这样的事情?