4

在 ruby​​ 中有没有办法可以在 shell 中注入一个击键来让程序运行?我需要通过在 shell 中运行一个程序

sh " #{another program}"

程序末尾有一个“按任意键继续”。我怎样才能让它继续前进?

ruby 中是否有类似的东西,比如 java

http://alvinalexander.com/java/java-robot-class-example-mouse-keystroke

4

2 回答 2

1

我认为你最好的选择是使用 Autoit,它可以像这样通过 COM 接口进行控制

require 'win32ole'
ai = WIN32OLE.new("AutoItX3.Control")
ai.WinWaitActive("Untitled - Notepad")
1.upto(10) do |i|
  ai.Send "#{i}{ENTER}"
end
于 2012-10-30T21:46:30.557 回答
0

您可以使用Open3.popen2启动进程并获取 stdout 和 stdin 的句柄,然后您应该能够通过执行“按键” stdin.puts "Y"

于 2012-10-30T19:35:47.127 回答