ruby - 在固定位置打印和更新多行

标签 ruby printing terminal console

我想在固定位置打印如下所示的输出,同时 block 中的数字每隔几秒更新一次。它类似于 top 的作用。

Jobs monitor:
+-----------------------------------------+
| Waiting | Launched | Running | Finished |
+-----------------------------------------+
|   319   |   364    |   94    |   201    |
+-----------------------------------------+
Elapsed time: 21s

有办法吗?

只有一行,我可以用 STDOUT.flush"\r" 来完成,但它不适用于多行,因为马车会把光标仅在新行的开头。

最佳答案

curses图书馆是使这项工作的一种方式。它允许您写入二维屏幕上的位置,这样您就不会局限于当前行。这question有一些学习诅咒的好资源。

关于ruby - 在固定位置打印和更新多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35562395/

相关文章:

css - 打印 CSS 背景图片

java - 使用 fop 1.1 打印时出现空白页

c - 在 C 中的 printf 中使用语句体

ruby-on-rails - 修改时 Rails 控制台输出中断

mysql - Ruby on Rails - 表情符号未保存在 MySQL 中

ruby-on-rails - 在 Ubuntu 14.04 上安装 Jekyll

ruby - 逻辑回归给出不正确的结果

ruby - Capybara-webkit、rspec 集成规范和 xvfb : webkit_server: Fatal IO error: client killed

laravel - 找不到 HOME 环境 -- 扩展 `~'

perl - 如何使用 Win32::Console 读取特殊键?