Python 3.5中没有持久性命令历史记录(virtualenv)

时间:2018-05-01 21:34:53

标签: python python-3.x virtualenv

我最近在Ubuntu 16.04上为Python 3.5设置了一个新的virtualenv,每当我在终端输入一个python shell时(通过输入“python3”),我没有在终端输入的命令的持续历史记录。

在常规系统python3上,持久命令历史记录工作正常,无需特殊设置。如何为virtualenv启用它?

1 个答案:

答案 0 :(得分:0)

由于答案隐藏在注释中,因此很难找到:

来自@Jason评论的https://unix.stackexchange.com/a/121390

创建一个.pythonrc.py文件:

import os
import atexit
import readline

readline_history_file = os.path.join(
    os.path.expanduser('~'),
    '.python_history'
)
try:
    readline.read_history_file(readline_history_file)
except IOError:
    pass

atexit.register(readline.write_history_file, readline_history_file)

并通过将以下行添加到您的~/.bashrc中来导出它:

export PYTHONSTARTUP=$HOME/.pythonrc.py