J-_*_*_-L 60
这可以使用Ruby 1.9.3的新getch
方法:
require 'io/console'
input = STDIN.getch
Run Code Online (Sandbox Code Playgroud)
Docs(核心):http://ruby-doc.org/core-2.3.0/IO.html#class-IO-label-io-2Fconsole
Docs(Lib):http: //ruby-doc.org/stdlib-2.3.0/libdoc/io/console/rdoc/IO.html#method-i-getch
资料来源:https://github.com/ruby/ruby/tree/trunk/ext/io/console
是的,有很多方法可以做到这一点,除了 gems 之外,您还可以通过 gems 直接操作 terminfo、termios、ncurses 或 stty 程序。
tty_param = `stty -g`
system 'stty raw'
a = IO.read '/dev/stdin', 1
system "stty #{tty_param}"
print a
Run Code Online (Sandbox Code Playgroud)