为什么我有一个conda环境列表,为什么我的conda激活不起作用?

时间:2019-09-24 11:06:11

标签: anaconda conda

我已经在Linux中使用conda创建了自己的环境。当我检查conda info --envs时,它会给出类似的环境列表

# conda environments:
#
base                  *  /home1/sriparna/anaconda3
copy_Env_deepgo          /home1/sriparna/anaconda3/envs/copy_Env_deepgo
deepgo_2                 /home1/sriparna/anaconda3/envs/deepgo_2
deepgo_3                 /home1/sriparna/anaconda3/envs/deepgo_3
enzy                     /home1/sriparna/anaconda3/envs/enzy
parth                    /home1/sriparna/anaconda3/envs/parth
protein_struc            /home1/sriparna/anaconda3/envs/protein_struc
py2                      /home1/sriparna/anaconda3/envs/py2

但是我无法激活特定的环境。例如当我尝试conda activate parth时显示

CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
To initialize your shell, run

    $ conda init <SHELL_NAME>

Currently supported shells are:
  - bash
  - fish
  - tcsh
  - xonsh
  - zsh
  - powershell

See 'conda init --help' for more information and options.

IMPORTANT: You may need to close and restart your shell after running 'conda init'.

请帮助我。

2 个答案:

答案 0 :(得分:5)

这对我有用:

source {path_to_anaconda}/anaconda3/etc/profile.d/conda.sh
conda activate parth

答案 1 :(得分:0)

Conda没有在您的Shell中初始化。在交互式外壳中运行以下命令,

conda init

Conda将检测您的Shell类型,并将初始化脚本写入Shell的配置文件中。 (运行一次就足够了。)

详细信息

Conda在4.6之后更新了其环境激活。

Quote from conda 4.6 release log

  

Conda 4.4允许“ conda激活envname”。问题在于设置外壳程序以使用此新功能并不总是很简单。 Conda 4.6添加了广泛的初始化支持,因此比以往更多的Shell可以使用新的“ conda activate”命令。有关更多信息,请阅读“ conda init –help”

的输出。

在先前的conda中,默认环境“ base”安装的二进制文件公开到了shell中。

conda init 4.6中引入conda之后,conda仅公开命令  condaPATH中。在所有平台上,环境切换由conda activate env-nameconda deactivate统一。但是,要使这些命令起作用,您必须使用conda init进行其他初始化。

有关详细信息,请阅读conda 4.6发布日志。

相关问题