我想删除一个用conda创建的特定环境。我怎样才能做到呢?假设我有一个活动的testenv环境。通过以下文档,我尝试了:

$ conda env remove

CondaEnvironmentError: cannot remove current environment. deactivate and run conda remove again

然后我停用它:

$ source deactivate

我尝试再次运行命令删除它,我仍然得到相同的错误。这里出了什么问题?


当前回答

在删除环境之前使用source deactivate来禁用它,将ENV_NAME替换为你想要删除的环境:

source deactivate
conda env remove -n ENV_NAME

其他回答

查看Anaconda或miniconda中的环境:

conda env list

如果你已经创建了一个使用name的环境,那么使用:

conda remove -n envname --all

如果你已经创建了一个使用前缀的环境,那么使用:

conda remove -p [path] --all

用你的环境名称更改envname,如果有前缀,则提供环境的完整路径,例如:C:/Users/techv/Desktop/project/env。 ——all将删除目标环境的所有依赖项。

我希望这个答案会有帮助。

在终端显示

(base) [root@localhost ~]#

只需点击命令:conda deactivate

你已经退出conda env了,现在你的提示符是这样的

[root@localhost ~] #

您可能没有完全禁用Conda环境—记住,您需要使用Conda deactivate命令(对于旧版本,使用source deactivate)。因此,在尝试之前启动一个新的shell并激活其中的环境可能是明智的。然后停用它。

您可以使用该命令

conda env remove -n ENV_NAME

以删除具有该名称的环境。(——name等价于-n)

注意,如果您愿意,在创建和删除环境时,也可以使用-p /path/to/env而不是-n ENV_NAME将环境放置在您想要的任何位置。他们不必住在你的conda装置里。

更新,2019年1月30日:从Conda 4.6起,Conda activate命令成为激活所有平台环境的新官方方式。这些变化在Anaconda的博客文章中有描述

首先禁用环境并返回基本环境。在基础上,您应该能够运行conda env remove -n <envname>命令。这会给你信息

删除环境中的所有包 当地C:\Users\ <用户名> \ AppData \ \连续\ anaconda3 \ env \ {envname}:

使用——前缀或-p标志创建的环境必须使用-p标志(而不是-n)删除。

例如: Conda remove -p </filepath/myenvironment>——all,其中</filepath/myenvironment>被替换为到环境的完整或相对路径。