【CONDA】库冲突解决办法

如今,使用PYTHON作为开发语言时,或多或少都会使用到conda。安装Annaconda时一般都会选择在启动终端时进入condabase环境。该操作,实际上是在~/.bashrc中添加如下脚本:

bash 复制代码
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/u20/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
    eval "$__conda_setup"
else
    if [ -f "/home/u20/anaconda3/etc/profile.d/conda.sh" ]; then
        . "/home/u20/anaconda3/etc/profile.d/conda.sh"
    else
        export PATH="/home/u20/anaconda3/bin:$PATH"
    fi
fi
unset __conda_setup
# <<< conda initialize <<<

该段代码被执行后,会在PATH环境变量中添加conda所在路径,即:

bash 复制代码
env
CONDA_EXE=/home/u20/anaconda3/bin/conda
PWD=/home/u20
GSETTINGS_SCHEMA_DIR=/home/u20/anaconda3/share/glib-2.0/schemas
CONDA_PREFIX=/home/u20/anaconda3
GSETTINGS_SCHEMA_DIR_CONDA_BACKUP=
...
PATH=/home/u20/anaconda3/bin:/home/u20/anaconda3/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

因此,解决方法是:

  • 在遇到冲突时,屏蔽在安装时添加的脚本
  • 在正常使用时,恢复在安装时添加的脚本

打开~/.bashrc并在尾部添加如下内容:

bash 复制代码
# 用于开启与关闭CONDA,关闭后需要打开新的终端才能屏蔽CONDA
alias conda_on='f=~/.bashrc;lines=$(sed -n "/conda initialize/=" ${f});lines=${lines//[[:space:]]/,};lines=${lines%,*};lines=${lines%,*};sed -i "${lines}s/^#//g" ${f};source ${f}'
alias conda_ff='f=~/.bashrc;lines=$(sed -n "/conda initialize/=" ${f});lines=${lines//[[:space:]]/,};lines=${lines%,*};lines=${lines%,*};sed -i "${lines}s/^/#/g" ${f};source ${f}'

需要屏蔽conda导致的库冲突时,执行conda_ff命令。查看此时的~/.bashrc可以看到安装Annaconda时添加的脚本已被注释。

需要使用conda时,执行conda_on命令。查看此时的~/.bashrc可以看到安装Annaconda时添加的脚本已恢复。

注意:

关闭后需要打开新的终端才能屏蔽CONDA

相关推荐
MonkeyKing_sunyuhua3 小时前
ubuntu22.04安装conda
conda·miniconda
Json____15 小时前
python的安装环境Miniconda(Conda 命令管理依赖配置)
开发语言·python·conda·miniconda
东成20221 天前
从配置anaconda到配置pycharm
开发语言·python·conda
曼彻斯特的海边3 天前
CentOS 7上安装Conda
linux·centos·conda
小酒窝.3 天前
深度学习工具 Anaconda、conda、CUDA、cuDNN、pytorch、Cuda Toolkit 解释
pytorch·深度学习·conda
mhl11074 天前
Linux 上安装 conda 步骤实现
linux·运维·ubuntu·centos·ssh·conda·运维开发
天冬忘忧4 天前
PySpark 本地开发环境搭建与实践
spark·conda·pyspark
每天都要写算法(努力版)4 天前
【已解决,含泪总结】Ubuntu18.04下非root用户Anaconda3卸载重装,conda install终于不再报错
服务器·conda·anaconda3
随时间进步5 天前
conda进行本地环境打包和转移使用
linux·服务器·人工智能·深度学习·神经网络·机器学习·conda
仙草哥哥8 天前
使用virtualenv/Anaconda/Miniconda创建python虚拟环境
python·conda·virtualenv