如何删除/删除virtualenv?


482

我使用以下命令创建了一个环境: virtualenv venv --distribute

:我无法用下面的命令将其删除rmvirtualenv venv- 这是部分virtualenvwrapper中提到下面virtualenvwrapper答案

ls在当前目录上执行了,但仍然看到venv

我可以删除它的唯一方法似乎是: sudo rm -rf venv

请注意该环境处于非活动状态。我正在运行Ubuntu 11.10。有任何想法吗?我尝试重新启动系统无济于事。


13
只需删除目录。
nathancahill 2012年

鸣叫:sudo rmvirtualenv venv是无效的命令。不知道为什么我认为重启会有所帮助。老实说,我还很新。
sudostack 2012年

24
请注意,rmvirtualenvvirtualenvwrapper随附。您需要安装它才能使其正常运行。
skytreader

4
请注意,您还可以删除所有当前安装的软件包,但是如果安装了virtualenvwrapper,则保留虚拟环境本身:$ virtualenv --clear path_to_my_venv。我会不时使用它来确保没有手动安装任何东西,就像旧的依赖项不再在中requirements.txt
泰勒·埃德米斯顿

1
sudo在正常情况下,这不是必需的。虚拟环境的全部目的是您可以使用常规用户帐户对其进行操作。
Tripleee

Answers:


419

而已!没有用于删除虚拟环境的命令。只需停用它,然后通过递归删除它即可消除应用程序的工件。

请注意,无论您使用哪种虚拟环境,都一样。virtualenvvenv,蟒蛇环境pyenvpipenv都在这里基于同样的原则。


14
值得注意的是,如果您使用pip安装依赖项,则可能希望pip冻结依赖项列表并保留在顶级目录中。如果以后选择部署应用程序,则不会有什么麻烦。
Thomas Anthony

7
当正确的答案只是在下面时,为什么要接受这样的投票?也许这是针对较旧版本的virtualenvwarpper的
-jsbueno

9
@jsbueno他使用的是virtualenv,而不是virtualenvwrapper(它们不是同一程序)。当时,virtualenv没有提供清理接口。你必须自己做。
Thomas Anthony

3
如果您已在git repo中创建了virtualenv(并且不忽略文件):git clean -dffx
Rex Hardin

172

只是为了回应@skytreader先前评论的内容,它rmvirtualenv是由virtualenvwrapper而不是提供的命令virtualenv。也许您没有virtualenvwrapper安装?

有关更多详细信息,请参见VirtualEnvWrapper命令参考


113

采用 rmvirtualenv

在中删除环境$WORKON_HOME

句法:

rmvirtualenv ENVNAME

在删除当前环境之前,必须使用停用功能。

$ rmvirtualenv my_env

参考:http : //virtualenvwrapper.readthedocs.io/en/latest/command_ref.html


2
甚至tab为此提供支持!
muon

13
请注意,这个答案是错误的,因为OP从来没有说过他们virtualenvwrapper
-KevinDTimm

@KevinDTimm是的,但是对于我们中那些使用virtualenvwrapper的人来说,这个答案“正确”而不是正确!
KhoPhi

73

您可以通过递归卸载所有依赖项来删除所有依赖项,然后删除venv。

编辑,包括艾萨克·特纳评论

source venv/bin/activate
pip freeze > requirements.txt
pip uninstall -r requirements.txt -y
deactivate
rm -r venv/

2
我认为您在deactivaterm -r venv/
艾萨克·特纳

危重只有做到这一点,如果你不共享系统的pip!(否则,您将卸载所有系统软件包。)
orome

1
实际上,pip uninstall如果您要通过任何方式删除所有软件包,则无需分别进行rm。跳过该步骤也可以避免先前评论中指出的风险。
Tripleee '19

33

只需从系统中删除虚拟环境即可,无需特殊命令

rm -rf venv

1
对我有效。如果您的虚拟环境仍在运行,请确保先停用。(您的虚拟环境)>停用> rm -rf“您的虚拟环境”
tthreetorch

30

来自virtualenv的官方文档https://virtualenv.pypa.io/en/stable/userguide/

删除环境

只需删除虚拟环境,然后将其所有内容删除即可,只需删除虚拟环境即可:

(ENV)$ deactivate
$ rm -r /path/to/ENV

1
@Sébastien不,sudo除非您还首先使用它们来设置环境,否则您不需要或没有类似的特权,通常这是一个错误。
Tripleee




3

如果您是Windows用户并且正在使用conda在Anaconda提示符下管理环境,则可以执行以下操作:

确保停用虚拟环境或重新启动Anaconda Prompt。使用以下命令删除虚拟环境:

$ conda env remove --name $MyEnvironmentName

或者,您可以转到

C:\Users\USERNAME\AppData\Local\Continuum\anaconda3\envs\MYENVIRONMENTNAME

(这是默认文件路径)并手动删除文件夹。


1

如果您是Windows用户,则位于C:\ Users \您的用户名\ Envs中。您可以从那里删除它。

也可以在命令提示符下输入rmvirtualenv环境名称。

我尝试使用命令提示符,所以它说已删除,但它仍然存在。所以我手动将其删除。


其实这是不对的。虚拟环境的位置实际上取决于执行virtualenv命令的位置。例如:C:\>virtualenv my_awesome_venv将在中创建虚拟环境C:\my_awesome_venv
Felix

我在谈论虚拟包装。我的错
jahmed31年

1

deactivate是您要查找的命令。就像已经说过的一样,没有删除虚拟环境的命令。只需停用它!


这不能回答问题。您是正确的,通常不需要破坏您的virtualenv,但这就是OP似乎要问的问题。
Tripleee '19

1

如果您是Windows用户,还可以通过以下步骤删除环境:C:/Users/username/Anaconda3/envs 在这里,您可以看到虚拟环境列表,并删除不再需要的环境。


0

您可以按照以下步骤删除与virtualenv关联的所有文件,然后再次重新安装virtualenv并使用它

cd {python virtualenv folder}

find {broken virtualenv}/ -type l                             ## to list out all the links

deactivate                                           ## deactivate if virtualenv is active

find {broken virtualenv}/ -type l -delete                    ## to delete the broken links

virtualenv {broken virtualenv} --python=python3           ## recreate links to OS's python

workon {broken virtualenv}                       ## activate & workon the fixed virtualenv

pip3 install  ... {other packages required for the project}

-9

步骤1:通过复制并粘贴以下命令来删除virtualenv virtualenvwrapper:

$ sudo pip uninstall virtualenv virtualenvwrapper

步骤2:转到.bashrc并删除所有virtualenv和virtualenvwrapper

打开终端:

$ sudo nano .bashrc

向下滚动,您将看到下面的代码,然后将其删除。

# virtualenv and virtualenvwrapper
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source /usr/local/bin/virtualenvwrapper.sh

接下来,获取.bashrc:

$ source ~/.bashrc

最后步骤:在没有终端/外壳的情况下,转到/ home并查找.virtualenv(我忘记了名称,因此,如果您发现与之相似.virtualenv.venv只是删除它。这将起作用。


这似乎回答了一个完全不同的问题,应该发出巨大的警告。一些建议也很糟糕(.bashrc再次采购您没有任何用处,并且可能会带来不受欢迎的后果)。
Tripleee
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.