Linux 如何在shell脚本执行期间处理用户提示/用户干预

Linux 如何在shell脚本执行期间处理用户提示/用户干预,linux,bash,shell,user-controls,Linux,Bash,Shell,User Controls,考虑要求用户输入是否继续的shell脚本[yY/nN]和 另一个脚本调用所有这些脚本。 我不想手动输入Yy。 注意:用户输入不是脚本的参数,它在脚本执行期间随时发生。 考虑3个shell脚本,即: A.SH,B.SH,C.S.< /代码>。 执行时,脚本提示: "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.SHB.SHC.sh不可

考虑要求用户输入是否继续的shell脚本[yY/nN]和 另一个脚本调用所有这些脚本。
我不想手动输入Yy。
注意:用户输入不是脚本的参数,它在脚本执行期间随时发生。
考虑3个shell脚本,即:<代码> A.SH,B.SH,C.S.< /代码>。 执行时,脚本提示:

"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.SHB.SHC.sh不可执行且不可编辑]

无法在RHEL上安装任何第三方插件,因此只需使用默认插件/命令。

我自己没有使用过,但请看一下“expect”。这正是它的目的。祝你好运

您可以尝试使用
expect
工具,该工具用于将输入自动输入到交互式程序中。试着从以下内容开始:

#!/usr/bin/expect

set timeout 10

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

interact

对不起,我不允许在机器上安装任何工具。