解决 conda remove -n 无效的问题

文章目录

  • 1. 问题描述
  • 2. 解决方案

1. 问题描述

在新建conda环境时,没有先回到base环境,而是在py3.6这个环境下新建,结果导致新建的snakemake成了py3.6的子环境。

利用 conda-env list 指令查看时,不能看到子环境的名称, 类似以下形式

$ conda-env list
# conda environments:
#
base                  *  ~/miniconda2
py3.6                    ~/miniconda2/envs/py3.6
                         ~/miniconda2/envs/py3.6/envs/snakemake
r35                      ~/miniconda2/envs/r35

如果先进入到py3.6,则看不到其他同级环境的名字,而py3.6显示为base

$ conda-env list
# conda environments:
#
                         ~/miniconda2
base                  *  ~/miniconda2/envs/py3.6
snakemake                ~/miniconda2/envs/py3.6/envs/snakemake
                         ~/miniconda2/envs/r35

此时使用命令 conda remove -n snakemake --all 或者 conda-env remove --name snakemake 都无效,无输出无报错

2. 解决方案

指定要删除的环境的路径,使用-p参数而不是-n参数,即可解决问题,即conda remove -p ~/miniconda2/envs/py3.6/envs/snakemake --all 或者 conda-env remove -p ~/miniconda2/envs/py3.6/envs/snakemake
其中要注意conda-env remove没有–all参数,默认删除整个环境

你可能感兴趣的:(python,anaconda)