在bash脚本中模拟ENTER键

时间:2011-06-07 11:37:23

标签: linux bash ubuntu shell

我创建了一个非常简单的bash脚本,它运行一些命令。 其中一个命令需要在运行时输入用户。即它询问用户“你想要等等等等吗?”,我想简单地向其发送一个回车键,以便脚本完全自动化。

我不必在运行时等待输入或任何东西,它足以发送按键,输入缓冲区将处理其余的。

5 个答案:

答案 0 :(得分:112)

echo -ne '\n' | <yourfinecommandhere>

或利用echo生成的隐含换行符(感谢Marcin)

echo | <yourfinecommandhere>

答案 1 :(得分:36)

您可能会发现yes命令很有用。

请参阅man yes

答案 2 :(得分:22)

您可以使用yes

# yes "" | someCommand

答案 3 :(得分:21)

以下是使用expect的示例用法:

#!/usr/bin/expect
set timeout 360
spawn my_command # Replace with your command.
expect "Do you want to continue?" { send "\r" }

检查:man expect以获取更多信息。

答案 4 :(得分:11)

您可以使用expect man expect 附带示例)。