Answers:
如果命令不是很挑剔,则应使用以下命令:
command > /dev/null << EOF
<answer 1>
<answer 2>
<answer 3>
EOF
这要求您事先知道确切的答案。
期望可以做到。从Expect 网站:
Expect是用于自动化交互式应用程序(例如telnet,ftp,passwd,fsck,rlogin,tip等)的工具。Expect确实使这些事情变得微不足道。Expect对于测试这些相同的应用程序也很有用[...]”
它提供了很多帮助,例如autoexpect。
再次从Expect网站上,
autoexpect监视您与其他程序的交互,并创建一个Expect脚本来重现您的交互。对于直线脚本,与手动编写脚本相比,自动预期可以节省大量时间。
如果您的脚本期望一个提示或多个提示可以给出相同的答案,则有yes
:
NAME
yes - output a string repeatedly until killed
SYNOPSIS
yes [STRING]...
yes OPTION
DESCRIPTION
Repeatedly output a line with all specified STRING(s), or `y'.
像这样使用它:
yes Me | give_a_hug.sh
yes n
,例如:yes n | mv -i * somewhere/