我最近在我的Mac上安装了anaconda2。默认情况下,Conda被配置为在打开新的终端会话时激活基本环境。
我希望访问Conda命令(也就是说,我希望将Conda的路径添加到我的$PATH
中,而Conda在初始化时会这样做,这样就可以了)。
但是,我通常不使用python编程,而且我也不希望Conda默认激活基本环境。
当第一次从提示符执行conda init
时,Conda将以下内容添加到我的.bash_profile
中
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/Users/geoff/anaconda2/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/Users/geoff/anaconda2/etc/profile.d/conda.sh" ]; then
. "/Users/geoff/anaconda2/etc/profile.d/conda.sh"
else
export PATH="/Users/geoff/anaconda2/bin:$PATH"
fi
# fi
unset __conda_setup
# <<< conda initialize <<<
如果我注释掉整个块,那么我就不能激活任何Conda环境。
我试着把整个街区都注释掉,除了
export PATH="/Users/geoff/anaconda2/bin:$PATH"
但是,当我启动一个新会话并试图激活一个环境时,我收到了以下错误消息:
CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
这个问题 (和其他类似的)是有帮助的,但最终没有回答我的问题,而且更适合于linux用户。
明确地说,我不是要求从我的(base)
中删除$PS1
,而是要求Conda在打开终端会话时不要激活基。
发布于 2019-02-06 19:01:25
我有conda 4.6和conda添加的类似的代码块。在我的例子中,有一个conda配置设置来禁用自动基本激活:
conda config --set auto_activate_base false
第一次运行它时,它将在主目录中创建一个带有该设置的.condarc
,以覆盖默认设置。
这不会消除您的.bash_profile
混乱,但是如果不手动编辑conda管理的部分,这是一个更干净的解决方案。
发布于 2019-09-17 12:38:32
在conda
4.6之后,有3种方法可以实现这一点。(最后一个方法具有最高优先级。)
conda config
更改设置。
conda配置--设置auto_activate_base falseconda config
子命令正在更改配置文件.condarc
。我们可以直接修改.condarc
。将以下内容添加到您的主目录下的.condarc
中,auto_activate_base (bool) #会在shell #初始化期间自动激活基本环境。对于conda init
auto_activate_base: falseCONDA_AUTO_ACTIVATE_BASE
。(.bashrc
表示bash,.zshrc
表示zsh)
导出CONDA_AUTO_ACTIVATE_BASE=false
若要将基于condarc
文件的配置参数名称转换为环境变量参数名称,请将所有大写和前置 CONDA_
。例如,可以使用always_yes
环境变量指定conda的CONDA_ALWAYS_YES
配置参数。环境设置优先于.condarc
文件中的相应设置。
参考文献
conda config --describe
发布于 2019-02-02 01:01:08
答案在一定程度上取决于您安装的conda
版本。对于conda >= 4.4的版本,应该足够在初始化后deactivate
conda环境,因此请添加
conda deactivate
就在下面
# <<< conda initialize <<<
https://stackoverflow.com/questions/54429210
复制相似问题