Ruby Open3.Popen3模拟用户输入



我正在尝试运行一个bash脚本(@command),需要用户输入,我正在尝试使用以下代码提供该脚本输入:

<>之前Open3.popen3(@command) do |stdin, stdout, stderr|stdin.write("y")stdout.gets结束之前
exec sudo su -c "some command" $username

如果有人能告诉我我做错了什么,或者对如何以不同的方式实现这一点有任何建议,那将是非常感激的。


同样,我可以像这样运行脚本:

<>之前@output = ' #{@command} '之前

在这种情况下,我可以在我运行应用程序的控制台中看到脚本输出的内容。

我得到了我的解决方案:如何修复挂popen3在Ruby?

<>之前Open3.popen3(@command) do |stdin, stdout, stderr|stdin。把"y r n"stdout。Each_line {|line|放行}stdin.close结束
out_err, status = Open3.capture2e(@command, :stdin_data => "yrn")
print out_err

相关内容

  • 没有找到相关文章

最新更新