Backspace 的作用类似于 Bash 中的 Enter

Backspace 的作用类似于 Bash 中的 Enter

每当我在 SCO 机器上输入错误时,bash我都会按backspace,就像按 一样enter,但不执行命令。

例如

bash-3.1$ ifcomfig "(backspace)"
bask-3.1$ 

但如果我按下enter,那么它会是这样的:

bash-3.1$ ifcomfig "(enter)"
bash: ifcomfig: command not found
  • 它为什么要这样做?
  • 我该如何解决这个问题?

谢谢

更新

这是输出stty -a

speed 38400 baud;   ispeed 38400 baud;   ospeed 38400 baud;   line = 0(tty);
rows = 100; columns = 92; ypixels = 0; xpixels = 0;
intr = DEL; quit = ^\; erase = DEL; kill = ^U; eof = ^D; eol = ^@;
swtch = <undef>; susp = <undef>; start = ^Q; stop = ^S;
-parenb -parodd cs8 -cstopb hupcl cread -clocal -loblk
-ortsfl -ctsflow -rtsflow
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl -iuclc
-ixon -ixany -ixoff
isig icanon -xcase echo -echoe -echok -echonl -noflsh
-iexten -tostop -xclude
opost -olcuc onlcr -ocrnl -onocr -onlret -ofill -ofdel
-isscancode
-autoe -ed_emacs -ed_vi -ed_history

答案1

键盘上的退格键可能实际上生成了 DEL 字符。事实证明了这一点两个都 intr并根据您的输出erase进行设置。我不知道在这种情况下哪个会被优先考虑,因为我从来没有愚蠢到尝试过:-) (a)DELstty -a

确认的快速方法是输入:

stty intr '^C'

在您的终端会话中,这会将其更改为 CTRL-C 并然后看看退格键有什么作用。

如果然后开始工作正常,您需要找到intr击键的设置位置并阻止它发生,或者将其设置^C为您的配置文件中的最后一件事(覆盖错误的设置)。


(a)intr虽然,实际上,我刚刚通过设置 my和eraseto (我的退格字符)来尝试一下^?,并且中断性质接管了。

相关内容