同一系统上管理2个独立的conda安装互不干扰

conda init后会修改~/.bashrc是的其他的版本的conda不能export
解决方法:待验证
 

要为两个不同位置的Conda安装分别初始化,可以使用以下方法:

您希望在同一系统上管理两个独立的Conda安装,并能够灵活切换它们而不互相干扰。这是一个很好的需求,我来介绍如何实现:

要为两个不同位置的Conda安装分别初始化,可以使用以下方法:

方法一:使用不同的配置文件

  1. 为每个Conda安装创建单独的初始化文件

    对于第一个Conda安装:

    /opt/biosoft/miniconda3_1/bin/conda init --no-user

    对于第二个Conda安装:

    /opt/biosoft/miniconda3_2/bin/conda init --no-user

    使用--no-user选项是为了确保初始化不会改变您的默认用户配置文件。

  2. 创建激活脚本

    为第一个Conda创建脚本(比如命名为activate_conda1.sh):

    #!/bin/bash
    export PATH=/opt/biosoft/miniconda3_1/bin:$PATH
    source /opt/biosoft/miniconda3_1/etc/profile.d/conda.sh
    echo "已激活 Conda 环境 1"

    为第二个Conda创建脚本(命名为activate_conda2.sh):

    #!/bin/bash
    export PATH=/opt/biosoft/miniconda3_2/bin:$PATH
    source /opt/biosoft/miniconda3_2/etc/profile.d/conda.sh
    echo "已激活 Conda 环境 2"

  3. 使用时

    # 激活第一个Conda
    source /路径/到/activate_conda1.sh

    # 激活第二个Conda
    source /路径/到/activate_conda2.sh

方法二:使用别名

在您的.bashrc或.zshrc中添加以下别名:

# Conda 1
alias conda1='export PATH=/opt/biosoft/miniconda3_1/bin:$PATH && source /opt/biosoft/miniconda3_1/etc/profile.d/conda.sh'

# Conda 2
alias conda2='export PATH=/opt/biosoft/miniconda3_2/bin:$PATH && source /opt/biosoft/miniconda3_2/etc/profile.d/conda.sh'

使用时,只需在终端输入conda1或conda2即可切换。

方法三:使用函数

在您的.bashrc或.zshrc中添加以下函数:

function use_conda() {
if [ "$1" = "1" ]; then
export PATH=/opt/biosoft/miniconda3_1/bin:$PATH
source /opt/biosoft/miniconda3_1/etc/profile.d/conda.sh
echo "已切换到 Conda 1"
elif [ "$1" = "2" ]; then
export PATH=/opt/biosoft/miniconda3_2/bin:$PATH
source /opt/biosoft/miniconda3_2/etc/profile.d/conda.sh
echo "已切换到 Conda 2"
else
echo "请指定要使用的Conda: 1或2"
fi
}

使用时:

use_conda 1 # 切换到第一个Conda
use_conda 2 # 切换到第二个Conda

这些方法都能确保两个Conda安装互不干扰,您可以根据自己的喜好选择最适合的方法。记得在使用任何一个方法后,运行source ~/.bashrc(或您使用的shell的配置文件)使更改生效。

  1.