如何离开/退出/停用python virtualenv?

我使用的是virtualenv和virtualenvwrapper。 我可以使用workon命令在virtualenv之间切换。

me@mymachine:~$ workon env1
(env1)me@mymachine:~$ workon env2
(env2)me@mymachine:~$ workon env1
(env1)me@mymachine:~$ 

但是,如何退出所有虚拟机并再次运行我的真机? 现在,我必须回到过去的唯一途径

me@mymachine:~$ 

是退出shell并开始一个新的。 这有点令人讨厌。 有没有一个命令“没有”,如果是的话,它是什么? 如果这样的命令不存在,我将如何去创建它?


通常,激活virtualenv会为您提供一个名为:

$ deactivate

这使事情恢复正常。

编辑1

我刚刚再次查看了virtualenvwrapper,的代码,是的,它也支持deactivate作为从所有virtualenvs转义的方式。

编辑2

如果您试图离开Anaconda环境,则该过程有点不同:运行双字命令source deactivate因为它们使用独立脚本实施停用。

bash-4.3$ deactivate
pyenv-virtualenv: deactivate must be sourced. Run 'source deactivate' instead of 'deactivate'
bash-4.3$ source deactivate
pyenv-virtualenv: no virtualenv has been activated.

我定义了一个别名workoff作为workon的对立面:

alias workoff='deactivate'

容易记住:

[bobstein@host ~]$ workon django_project
(django_project)[bobstein@host ~]$ workoff
[bobstein@host ~]$

$ deactivate 

如果这不起作用,请尝试

$ source deactivate

任何知道bash source作品的人都会觉得这很奇怪,但是一些关于virtualenv的包装/工作流实现为source activate的恭维/对应。 因人而异

链接地址: http://www.djcxy.com/p/4073.html

上一篇: How to leave/exit/deactivate a python virtualenv?

下一篇: How to apply CSS to iframe?