如何显示来自不同Anaconda版本的conda环境的名称别名?

问题描述

我试图显示Miniconda和Aanaconda的conda环境的名称(别名)。目前,我的认conda可执行文件来自Miniconda。

在某些背景下,我在$HOME/packages/miniconda3中安装了Miniconda,在/opt/anaconda3/中安装了Anaconda(也许有更好的方法可以这样做,但这正是我最终完成项目安装的方式)正在工作)。

$ conda env list
# conda environments:
#
base                  *  $HOME/packages/miniconda3
ai                       $HOME/packages/miniconda3/envs/ai
test-project             $HOME/packages/miniconda3/envs/test-project
                         /opt/anaconda3
                         /opt/anaconda3/envs/interviews
                         /opt/anaconda3/envs/teaching

在这里稍作编辑了输出,例如将主目录缩写为$ HOME并重命名了一些conda环境。

目前,我在Miniconda的base环境在$HOME/packages/miniconda3中,而我在Anaconda的base环境在/opt/anaconda3中。我希望我的三个Anaconda环境也显示它们的别名(就像Miniconda环境一样),以便我可以在Miniconda和Anaconda环境之间激活,而不必复制完整路径,例如conda activate /opt/anaconda3/envs/interviews

是否可以同时为Miniconda和Anaconda启用此名称别名?

解决方法

不应并排安装Miniconda和Anaconda。如果您需要Anaconda环境,只需使用Miniconda并使用anaconda元包创建一个环境。

尽管我对此表示担忧,但环境的可命名性由envs_dirs配置设置中是否列出了包含文件夹来控制。因此,您应该可以通过类似的方式获得所需的行为

conda config --append envs_dirs /opt/anaconda3/envs