一台机器上有好几套conda怎么办
其实这一篇也很水,可是又好几个月不更新了我能怎么办呢
背景
故事是这样的:
我们实验室用在我来之前就用全局安装的办法装了一套公用的conda,可是我当时没有管理员权限,不好换mamba或者进行类似的操作,所以用起来很难受,所以我就往自己的$HOME里装了自己的miniconda,但是给其它同学debug的时候经常要回到系统自带的conda环境里面,我就很烦,前两天就往自己的.zshrc里面写了个:
function use_system_conda(){
__conda_setup="$('/lab_public/shared/applications/conda/miniconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/lab_public/shared/applications/conda/miniconda3/etc/profile.d/conda.sh" ]; then
. "/lab_public/shared/applications/conda/miniconda3/etc/profile.d/conda.sh"
else
export PATH="/lab_public/shared/applications/conda/miniconda3/bin:$PATH"
fi
fi
unset __conda_setup
export WHICH_CONDA__="system conda"
}
function use_own_conda(){
__conda_setup="$('/home/my_user_name/anaconda/bin/conda' 'shell.zsh' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/home/my_user_name/anaconda/etc/profile.d/conda.sh" ]; then
. "/home/my_user_name/anaconda/etc/profile.d/conda.sh"
else
export PATH="/home/my_user_name/anaconda/bin:$PATH"
fi
fi
unset __conda_setup
export WHICH_CONDA__="own conda"
}
use_own_conda
function get_which_conda(){
echo $WHICH_CONDA__
}
PROMPT="%F{blue}(\$(get_which_conda))%f$PROMPT"
这样就方便多了,我想用自己的conda就use_own_conda(默认)想用系统的conda就use_system_conda,最后面一行还往prompt里面加了个提示提醒我用的是哪一个(是的我今天用错了才加的),如果有使用bash的同学想抄作业记得改一下设置prompt的操作,这个是zsh only的,它设置颜色什么的要方便一些。
效果嘛

Last modified on 2021-10-07