如何离开/退出/停用Python虚拟env

2022-09-05 00:50:05

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

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

如何退出所有虚拟环境并再次处理我的系统环境?现在,我回到壳体的唯一方法是退出shell并开始一个新的shell。这有点烦人。有没有一个命令来处理“无”,如果是这样,它是什么?如果这样的命令不存在,我将如何创建它?me@mymachine:~$


答案 1

通常,激活 virtualenv 会给你一个名为

$ deactivate

这使事情恢复正常。

我刚刚再次专门查看了 的代码,是的,它也支持作为逃避所有虚拟文档的方式。virtualenvwrapperdeactivate

如果您尝试离开 Anaconda 环境,该命令取决于您的版本。最新版本(如 4.6)直接在 shell 中安装函数,在这种情况下,您将运行:condaconda

conda deactivate

较旧的 conda 版本改为使用独立脚本实现停用:

source deactivate

答案 2

用:

$ deactivate 

如果这不起作用,请尝试

$ source deactivate

任何知道Bash源代码如何工作的人都会认为这很奇怪,但是围绕virtualenv的一些包装器/工作流将其作为补充/对应物来实现。您的里程可能会有所不同。source activate