macOS上解决Homebrew和Anaconda冲突
in 技术日志 with 0 comment and 223 read

macOS上解决Homebrew和Anaconda冲突

in 技术日志 and 224 read

序言

前几天用Deepin装了Anaconda之后,感觉蛮舒爽的, 于是又在Mac上安装了Anaconda。

安装完之后,terminal里面的Anaconda指令全都好用,我也就没在意什么。

结果,我昨天突然把zsh切换回了bash,导致Anaconda的指令不好用了,于是我需要让bash也支持Anaconda的指令。

然后我解决了Anaconda的问题之后,发现ls等基本指令又不好用了,Homebrew又不好用了。

有解决方法吗?

有!

具体操作方法

打开Finder,到~目录下(也就是你的用户目录)。

然后按下快捷键:Shift Command .,让Finder显示隐藏文件。

然后找一下这个文件,没有的话就新建一个:.bash_profile

注意,先打开/etc/profile这个文件,从其中复制粘贴全部内容,到.bash_profile里面。

然后打开这个文件:.zshrc

从.zshrc,复制Anaconda部分的内容,然后粘贴到.bash_profile文件中。

注意:要把zsh.shell改成bash.shell。

此时文件中的内容应该大概是这样的(只有用户名不同):

# System-wide .profile for sh(1)

if [ -x /usr/libexec/path_helper ]; then
    eval `/usr/libexec/path_helper -s`
fi

if [ "${BASH-no}" != "no" ]; then
    [ -r /etc/bashrc ] && . /etc/bashrc
fi

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

保存,然后重启你的Terminal即可。

附录

顺带一提,使用终端打开VSCode编辑文件的话,要在.bash_profile中加入这样一段内容:

# Add Visual Studio Code (code)
export PATH="$PATH:/Applications/Visual Studio Code.app/Contents/Resources/app/bin"

顺带一提,从zsh切换到bash的指令如下:

$ chsh -s /bin/bash
Responses