首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在shell脚本执行期间处理用户提示/用户干预

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

Stack Overflow用户
提问于 2013-11-13 21:02:50
回答 2查看 165关注 0票数 0

考虑要求用户输入的shell脚本,或者notyY/nN,另一个脚本调用所有这些脚本。

我不想手动输入Yy。

注意:用户输入不是脚本的参数,它在脚本执行期间随时发生。

考虑3个shell脚本,即:a.sh, b.sh, c.sh

执行时,脚本提示:

代码语言:javascript
复制
"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不可执行且不可编辑

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

EN

回答 2

Stack Overflow用户

发布于 2013-11-13 21:21:51

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

代码语言:javascript
复制
#!/usr/bin/expect

set timeout 10

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

interact
票数 2
EN

Stack Overflow用户

发布于 2013-11-13 21:06:57

我自己还没有用过这个,但是看看'expect‘。这正是它存在的目的。祝好运!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19954540

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档