使用多行输入从shell脚本运行linux程序

hp7*_*289 3 linux shell

我想从脚本中运行特定程序,该脚本通常会要求用户进行一些输入(几次)。

例如,当我在外壳中启动程序时,我的输入将是:

t [ENTER]
3 [ENTER]
12 [ENTER]
e [ENTER]
Run Code Online (Sandbox Code Playgroud)

在程序需要下一行输入的每一行之后,必须等待。

我想有一个解决方案

echo t | prog
echo 3 | prog
echo 12 | prog
echo e | prog
Run Code Online (Sandbox Code Playgroud)

但是在第一行之后,由于缓冲区为空,程序将无输入运行。我该如何解决?

twa*_*erg 5

此处文档的主要用例:

prog <<EOF
t
3
12
e
EOF
Run Code Online (Sandbox Code Playgroud)