Linux下如何为Shell脚本自动提供两次交互提示输入?
自动化执行需交互输入的Shell脚本方案
针对需要两次交互输入(分别为o和1)的Shell脚本,有两种简单的单命令自动化执行方式:
方法1:使用echo管道传递输入
利用echo输出带换行的两次输入内容,通过管道传给脚本:
echo -e "o\n1" | sh Contrast-3.11.6.sh
-e参数让echo解析转义字符\n,实现两次输入的换行分隔,刚好匹配脚本的两次交互提示顺序。
方法2:使用Here Document( heredoc)
这种方式语法更直观,将需要的输入内容包裹在标记符之间:
sh Contrast-3.11.6.sh << EOF o 1 EOF
脚本会读取EOF之间的内容作为标准输入,按顺序响应两次交互请求。
手动执行中文示例
sh Contrast-3.11.6.sh 正在解压JRE... 启动安装程序... 获取Linux root权限 无法获取Root权限。Contrast服务器将不会被安装为系统启动时自动运行的Linux服务,数据库备份需要手动配置。 这将在您的计算机上安装Contrast企业版本地部署版本。 确认 [o, 回车], 取消 [c] o 检测到之前的安装。是否要更新该安装? 是,更新现有安装 [1, 回车] 否,安装到其他目录 [2] 1
内容的提问来源于stack exchange,提问作者Arpit Gupta
相关产品推荐
相关产品推荐

