Linux/Unix系统SSH远程按Backspace键删除时出现^H的处理方法


在linux/unix系统中连接SSH远程工作时,输出字符后按Backspace键删除时,会出现^H,这对习惯了按Backspace键删除的用户来说,感觉非常别扭,虽然可以通过Ctrl+Backspace组合键实现删除功能。

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

$ id
uid=1002(git) gid=1002(git) groups=1002(git)
$ stty erase ^h

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

$ id 
uid=1002(git) gid=1002(git) groups=1002(git)
$ stty erase ^?

具体是因为表示方法不一样

终端名称备注
^HBs(退格)按 CTRL+H 键可以得到
^?Del只是一种表示方法,按CTRL+? 键得不到这个键值. 有时可以通过PC机键盘按 CTRL+Backspace键得到这个值
^[[3~Delete非ASCII码.PC机键盘上的Delete键

Linux上erase信号表示删除最后键入的字符. 这个信号即可以绑定到终端的^H上, 也可以绑定到终端的^?上. (甚至随便你喜欢的哪个键. ) 至于具体绑定在终端哪个键值上,终端上输入 stty -a 可以看到.
原帖

声明:小小博客|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - Linux/Unix系统SSH远程按Backspace键删除时出现^H的处理方法


Carpe Diem and Do what I like