从头开始,我使用ansible在Linux环境中打开Jar文件。
基本上,我这样做:java -jar someJarFile.jar,它在命令行中打开。 现在,它提示我几个问题,可以通过多次单击Return来传递。 最终jar将产生一个WAR文件...
这是我需要您帮助的地方。 我想使用ansible调用Expect脚本,以便它可以自动执行jar并连续按Enter键,直到jar成功完成/安装为止。
答案 0 :(得分:0)
尝试
yes "" | java -jar someJarFile.jar
答案 1 :(得分:0)
如果您知道需要按<Enter>
的次数,则可以使用echo -e '\n'
。例如,如果您知道需要三个<Enter>
:
echo -e '\n\n\n' | java -jar someJarFile.jar
这对于需要输入yes
不允许的特定且不同的值的情况也很有用。例如,回答如下提示:
Enter value [default]: <enter>
Enter number: 30<enter>
Ok?: y<enter>
Do the dangerous: n<enter>
可以用
模拟echo -e '\n30\ny\nn\n' | java -jar someJarFile.jar