paramiko.SSHClient().invoke_shell(term='linux')
打开)。我已经找到了一个键盘记录器,并在$TERM == 'linux'的终端中尝试使用它,但对于
ctrl+left
和left
返回相同的序列(27,91,68)。如果我在另一个终端(使用$TERM =='xterm')中尝试键盘记录器,则会得到代码(27,91,49,59,53,68)。但是这些代码不能从SSH通道产生预期的输出(在正常的Linux shell上向左移动光标一个单词)。即使我使用term ='xterm'启动paramiko也是如此。
有什么想法应该使用哪个序列?或者为什么以上序列不起作用?
更新:我很乐意使用另一种终端类型(而不是“linux”),但不幸的是pyte仅适用于VTxxx终端(我认为“linux”类似于vt220终端 - 无论如何,它都有效),因此xterm无法正常工作。
Alt-B
用于向后单词。terminfo甚至没有Ctrl-←
的条目。 - ninjalj