linux 终端 backspace不能删除字符

linux 终端 backspace不能删除字符在linux/unix平台的经常使用scanf从键盘获取字符,输出字符后按Backspace键删除时,会出现^H,这对习惯了按Backspace键删除的用户来说,感觉非常别扭,虽然可以通过Ctrl+Backspace组合键实现删除功能可通过stty命令修改终端配置来实现Backspace删除功能。如下:QUOTE:   [oracle@RHEL5~]$iduid

在linux/unix平台的经常使用scanf从键盘获取字符,输出字符后按Backspace键删除时,会出现^H,这对习惯了按Backspace键删除的用户来说,感觉非常别扭,虽然可以通过Ctrl+Backspace组合键实现删除功能

可通过stty命令修改终端配置来实现Backspace删除功能。如下:

QUOTE:   

[oracle@RHEL5 ~]$ id

uid=501(oracle) gid=501(oinstall) groups=501(oinstall),502(dba),503(asadmin)

[oracle@RHEL5 ~]$ stty erase ^h

若要恢复Ctrl+Backspace组合键删除功能,可执行以下命令:

QUOTE:

[oracle@RHEL5 ~]$ id

uid=501(oracle) gid=501(oinstall) groups=501(oinstall),502(dba),503(asadmin)

[oracle@RHEL5 ~]$ stty erase ^?

同时可通过stty -a查看所有的终端设置:

QUOTE:

oracle||oralinux||/home/oracle||–>>id
uid=500(oracle) gid=501(oinstall) groups=500(dba),501(oinstall)
oracle||oralinux||/home/oracle||–>>stty -a
speed 38400 baud; rows 24; columns 80; line = 0;
intr = ^C; quit = ^\; erase = ^H; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; 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
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff
-iuclc -ixany -imaxbel
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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/39246.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注