Skip to content

Terminal_Read_Single_Character_From_Keyboard

Iacob edited this page Nov 8, 2010 · 1 revision

UNIX终端默认使用行缓冲,必须要输入回车才会返回.

需要读取单个字符的时候,使用下面命令设置终端:

stty raw -echo

如要恢复到以前的状态,则需要:

stty -raw echo

如同下面的程序:

#!/usr/bin/ruby

stty raw -echo

aaa=STDIN.getc print aaa,"\n"

stty -raw echo

注意:某些终端模拟器根本不支持这种工作形式,所以如果要使用终端模拟器则需要选择一种同终端设备工作方式相似的.

None: Terminal/ReadSingleCharacterFromKeyboard (last modified 2008-05-11 16:24:27)