linux/unix平台Oraclesqlplus 中Backspace无法删除字符问题
Oracle sqlplus在打错字符时我们可以使用ctrl+backspace组合键实现删除功能。但是你一定要使用! WBackspace键删除的话,会出现^H,无法删除,这是应用linux中对tty设备的字符转换没有配置好,可通过stty命令修改终端配置来实现Backspace删除功能。具体修改办法如下:+ ?$ ^& g3 t3 c& t/ z;I& i
z%u7 h; Y2 k4 i8 B) j[oracle@www.yeserver.com ~]$ id
uid=800(oracle) gid=803(oinstall) groups=800(dba),801(oper),803(oinstall)
( o0 j( f: y0 x6 c[[email protected]~]$ stty erase ^h
* U1 g.{' Q: a
6 {3 i+}4 t# k$ [. h1 z! k% U若要恢复Ctrl+Backspace组合键删除功能,可执行以下命令:
6 a: Z3e9 K+ I, R( r\
[oracle@www.yeserver.com ~]$ id
uid=800(oracle) gid=803(oinstall) groups=800(dba),801(oper),803(oinstall)
1 x( ^5z/ t2 w: @[[email protected] ~]$ stty erase ^?
同时可通过stty -a查看所有的终端设置
[oracle@www.yeserver.com ~]$ id
uid=800(oracle) gid=803(oinstall) groups=800(dba),801(oper),803(oinstall)
[[email protected] ~]$ stty -a
speed 38400 baud; rows 37; columns 122;line = 0;
intr = ^C; quit = ^\; erase = ^?; kill =^U; eof = ^D; eol = ; eol2 = ; swtch = ;start = ^Q;
stop = ^S; susp = ^Z; rprnt = ^R; werase =^W; lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 -hupcl -cstopb cread-clocal -crtscts -cdtrdsr
-ignbrk -brkint -ignpar -parmrk -inpck-istrip -inlcr -igncr icrnl ixon -ixoff -iuclc -ixany -imaxbel -iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret-ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl-noflsh -xcase -tostop -echoprt echoctl echoke
[oracle@www.yeserver.com ~]$