ssh 连接将控制键显示为 ^P 或 ^A

ssh connection shows control keys as ^P or ^A

当我按下 ctrl-p 时,它显示为 ^P 而不是调用上一个输入行。同样适用于所有其他 readline 控制键,如 ctrl-a(行首)。我使用的所有内置 readline 功能的工具都会出现这种情况。 运行 没有 ssh 的工具,工作正常。

ssh server1 dc_shell     // BAD  ctrl-p is displayed as ^P
dc_shell                 // OK   ctrl-p recalls last line
ssh server1              // OK! I get a bash shell where ctrl-p recalls last line

使用-t ssh 选项(强制分配伪终端):

ssh server1 -t dc_shell

或将RequestTTY=yes添加到~/.ssh/config