解决方法
是的,你可以在Windows Vista,7甚至8,以及一些第三方扩展命令解释器,如4NT和Take Command,你可以通过使用向上键,编辑行并重新执行该行来调用以前的命令.我不知道Ruby与此有什么关系.如果你想在控制台中使用auto-it Active-X控件让Ruby键入键击.
编辑:这里有一个使用Autoit来编辑控制台的示例,下载并首先安装它,然后运行以下脚本.为了确保脚本不与其他打开的控制台交互,我将mu cmd.exe复制到首先启动的cmd2.exe.
require 'win32ole' title = "C:\\Windows\\System32\\cmd2.exe" STDOUT.sync = true ai = WIN32OLE.new("AutoItX3.Control") ai.winwait(title) ai.WinActivate(title,"") ai.Send "cls{ENTER}" 1.upto(4) do |i| ai.Send "line#{i}{ENTER}" end 1.upto(4) do |i| ai.Send "{UP}" sleep 1 end ai.Send "line one {ENTER}"