Pipenv 是一个相对较新的打包工具,包含“Pipfile、Pip 和 Virtualenv”。我在 .bashrc 中进行了更改以简化我的 PS1,但现在发现我需要 PS1 来告诉我何时使用我的 virtualenv。

当前 PS1:

PS1='\w $ '

从下面,你可以看到我的提示脚本没有告诉我我是否在使用虚拟环境:
~ $ cd workspace/myproject/
~/workspace/myproject $ pipenv shell
Launching subshell in virtual environment. Type 'exit' or 'Ctrl+D' to return.
~/workspace/marcus_project $

我经常搞砸我的 PS1 ,并希望有一个简单的修复,让 virtualenv 中的提示像这样显示: (my-env) ~ $

最佳答案

根据 the docs ,在您的项目中创建一个名为 .env 的文件。给它内容

export PS1='(myenv) \w $ '

或任何你想要的。 pipenv shell 将加载它。

(注意:我自己没有尝试过 pipenv。今天我知道它存在!:))

拿2

如果您的 .bashrc.profile(或其他启动文件)设置了 PS1 ,您可以破解它。
  • export PIPENV_PS1='(myenv) \w $ ' 放在您的 .env 中。 (PIPENV_PS1 这个名字没什么特别的——我只是选择了一些我认为有意义的东西。)
  • .bashrc 的末尾,添加:
    if [[ $PIPENV_PS1 ]]; then
        export PS1="$PIPENV_PS1"
    fi
    

  • 这样您的 .bashrc 将复制您在 .env 中设置的值。

    关于python - 在 PS1 中显示 pipenv virtualenv,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46448677/

    10-15 17:03