Из groovy мне нужно запустить команду оболочки, которую я не написал.Эта команда запрашивает у пользователя различные входные значения.Поэтому я пытаюсь понять, как реагировать на подсказки из отличного сценария.Пока у меня есть:
Process proc = command.execute()
parms.each() {value ->
proc << String.valueOf(value) + "\n"
}
StringBuilder output = new StringBuilder()
proc.waitForProcessOutput(output, output)
return output.toString()
Это работает в том, что команда запускается, и пармы передаются ей, за исключением того, что все пармы передаются в первое приглашение от команды.
Я новичок в Groovy, поэтому мне сложно понять, как с этим справиться.В идеале я хотел бы иметь возможность собирать каждое приглашение и давать соответствующий ответ, а не этот метод, который делает хрупкое предположение о порядке запросов.
Кто-нибудь делал что-то подобное раньше с groovy?