UG Machine TTY问题解决记录

今天研究了一下,解决了UG Machine上TTY字符识别的一个小问题。

症状

登录进入terminal以后,默认shell是csh,按<backspace>键以后整行的命令都消失了,直接提示下一个命令。

原因排查

键入`stty -a`,发现inter信号对应的键盘转义序列是^?,erase对应的是^H,而默认<backspace>的转义序列是^?和^H,这样你输入<backspace>的时候会发送中断信号。

解决方案

一句命令:

stty inter ^C

把发送中断信号设定回我们习惯的C-c命令即可。

小技巧

1. 想知道terminal下各不可见字符(例如<backspace>,<delete>,<page down>)的转义序列?

先按C-v,再按该键即可。

emacs下面则是先按C-q,再按该键。

2. 改变用户默认使用的SHELL:

chsh $USER $SHELL

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。