如何定义在激活Python virtual environment时要使用的自定义提示?

我有一个bash脚本,用于激活在调用特定Fabric命令时使用的virtualenv。我希望 shell 程序提示符说类似“(fab)”的内容,这样我就可以轻松地将其与我打开的其他 shell 程序区分开。在this示例之后,我尝试了:

#!/bin/bash
script_dir=`dirname $0`
cd $script_dir
/bin/bash -c ". .env/bin/activate; PS1='(fab) '; exec /bin/bash -i"

但提示没有任何变化。我究竟做错了什么?

最佳答案

提示是在virtualenv的激活脚本(位于virtualenv下的bin文件夹中)中设置的。如果只想更改提示几次,则可以在调用Activate之前设置一个环境变量(确保在相应的停用文件中将其清除)。如果您只是想让提示始终与众不同,则可以在看起来像这样的行中激活它

set "PROMPT=(virtualenvname) %PROMPT%"

如果您使用virtualenvwrapper,则也可以在postactivate和postdeactivate脚本中完成所有这些操作。

关于python - 如何自定义virtualenv shell提示,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20524692/

10-16 16:09