0

考虑询问用户输入是否继续的 shell 脚本[yY/nN],另一个脚本调用所有这些脚本。
我不想手动输入 Yy。
注意:用户输入不是脚本的参数,它在脚本执行期间随时发生。
考虑 3 个 shell 脚本,即:a.sh, b.sh, c.sh.
执行时,脚本提示:

"You want to Proceed[Y/y/N/n]?"

现在,在这些脚本提示时Wrapper.sh调用a.sh, b.sh, c.sh并提供 Y/y 或 N/n 输入。
我无法将参数传递为 a.sh "Y"
[ps: a.sh b.sh c.sh are not executable and non-editable]
无法在 RHEL 上安装任何第三方插件,因此只需要使用默认插件/命令。

4

2 回答 2

2

您可以尝试expect用于将输入自动提供给交互式程序的工具。尝试从这样的事情开始:

#!/usr/bin/expect

set timeout 10

spawn "PATH_TO/a.sh"
expect "You want to Proceed" 
send "y\r"

interact
于 2013-11-13T13:21:51.267 回答
0

我自己没有用过这个,但看看'expect'。这正是它的用途。祝你好运!

于 2013-11-13T13:06:56.833 回答