Ruby脚本中的自动输入?

时间:2010-08-27 10:28:54

标签: ruby bash

我从ruby脚本运行此命令:

system "trad install"

这会提示我三次选择y / n。

有没有办法自动选择y,y,n?

4 个答案:

答案 0 :(得分:3)

echo -e "Y\nN\nN\n" | trad install

答案 1 :(得分:1)

您可以使用Session和Ruby的内置pty/expect(似乎没有在线文档)自动运行。 (Dave Thomas在 Programming Ruby 的最新版本中有一些简短的expectpty示例,如果您有这方面的副本。)

但是,我同意Dmitry:如果可能的话,调整trad几乎肯定更容易。

答案 2 :(得分:0)

好吧,您可能想要使用

pipe = IO.popen("trad install")
pipe.write "yyn"

不确定这是否有效。

答案 3 :(得分:0)

我认为你不能那样做。如果trad是您的应用程序,最好的方法是为其添加选项。