Mac 终端中的退格行为异常

Mac 终端中的退格行为异常

我正在尝试弄清楚如何使用 Mac OS X 上的终端应用程序让 SSH 会话按照我想要的方式工作。

我习惯在 Windows 上使用 PuTTY,其中 backspace 意味着退格。

当我在 Mac 上按下 delete/backspace 键时,它会删除光标后面的字符而不是之前的字符。

我打开了 Delete 发送 Ctrl + H,这在大多数情况下都有效,但有时它只是在屏幕上显示为^H。这通常是在我登录的框上的一些自定义 Python 脚本提示时出现的。在 Windows 上使用 PuTTY 不会发生这种情况。

顺便说一句,我正在登录运行 OpenSSH 的 Ubuntu Linux 服务器。

我需要做什么才能使退格键始终保持退格键状态?

答案1

运行stty erase ^H应该可以修复它,因为当前的控制序列被作为退格键发送。

答案2

确保 Unix 系统中的退格字符与 Mac 中的退格字符匹配。如果您在 Mac 中使用 control-H 进行退格,则在 Unix 系统中使用该字符(stty 擦除“^H”)。如果您在 Mac 中使用 DELETE 进行退格(执行“stty -a”命令时显示为“^?”),则在 Unix 系统中使用该字符(stty 擦除“^?”)。

相关内容