Ruby windows命令提示前一行

是否可以使用 Ruby编辑已写入命令提示符的内容

例如,假设我已经向STDOUT写了10行,我可以将光标移动到例如石灰5并覆盖该行吗?

谢谢.

解决方法

是的,你可以在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}"

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...