在像交互式python shell这样的shell中,你通常可以使用箭头键在当前行中移动,或者获得之前的命令(向上箭头)等。
但当我ssh到另一台机器并在那里启动python后,我得到了如下会话:
>>> import os
>>> ^[[A
最后一个字符来自箭头向上。或者,使用箭头向左:
>>> impor^[[D
我该如何解决这个问题?
在常规bash中,方向键工作正常。奇怪的行为只是在交互的python(或perl等)shell中。
在像交互式python shell这样的shell中,你通常可以使用箭头键在当前行中移动,或者获得之前的命令(向上箭头)等。
但当我ssh到另一台机器并在那里启动python后,我得到了如下会话:
>>> import os
>>> ^[[A
最后一个字符来自箭头向上。或者,使用箭头向左:
>>> impor^[[D
我该如何解决这个问题?
在常规bash中,方向键工作正常。奇怪的行为只是在交互的python(或perl等)shell中。
当前回答
您可以通过以下命令从“sh”切换到“bash”
$ /sh/bash
其他回答
安装readline-devel包。 使用readline模块重新编译python 宾果!
您可以通过以下命令从“sh”切换到“bash”
$ /sh/bash
你的env变量$TERM如何设置[a]当事情正常工作时[b]当他们不工作时?环境设置往往是解决这类问题的关键。
在Unbuntu或Mint中, 如果您正在使用pyenv,
sudo apt install libreadline-dev
pyenv uninstall 3.8.8
pyenv install 3.8.8
一旦安装了libreadline-dev,你不需要在每个python版本上安装pip install gnureadline。
我通过以下方法解决了这个问题:
Yum安装readline-devel PIP安装读取线 我在这里遇到了另一个错误: gcc: readline / libreadline。a:没有这样的文件或目录 gcc: readline / libhistory。a:没有这样的文件或目录 我通过安装补丁来解决这个问题: Yum安装补丁
之后,我成功地运行pip install readline,在我的python shell中解决了转义字符。
供你参考,我用的是红帽