Linux 如何在shell脚本执行期间处理用户提示/用户干预
考虑要求用户输入是否继续的shell脚本[yY/nN]和 另一个脚本调用所有这些脚本。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不可
我不想手动输入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
对不起,我不允许在机器上安装任何工具。