由于苏南大叔的mbp罢工的缘故,所以,此前很多文章,都是基于win10环境的。最近,水果电脑修理好之后,苏南大叔会再次写一些mac环境下的相关文章。在本篇文章中,苏南大叔描述的是conda命令在mac系统中无法找到的问题。

苏南大叔:mac系统,无法找到conda命令,该怎么处理? - mac-conda-hero
mac系统,无法找到conda命令,该怎么处理?(图6-1)

conda是安装了anconda之后的衍生命令,可以理解为pip的加强版命令。当然,这里,并不是来讨论conda命令的使用问题的,这里解决的是conda命令,无法识别的问题。

测试环境:mac@11.1anconda@1.10.0。如果您的操作系统是win,请参考文末另外一篇文章。

问题展示

conda命令没有找到,这是个非常麻烦的问题。苏南大叔个人认为,这应该是个软件制作上的问题,否则不可能winmac都有这样的问题。错误提示类似如下:

command not found: conda

苏南大叔:mac系统,无法找到conda命令,该怎么处理? - command-not-found
mac系统,无法找到conda命令,该怎么处理?(图6-2)

方案一:常规思路

默认情况下,这个conda命令是位于/opt/anaconda3/bin目录下面的,当然您还可以通过which或者whereis之类的命令去查找conda的真实位置,但是,苏南大叔居然没能用这两条命令获得conda的位置,暂时todo.

苏南大叔:mac系统,无法找到conda命令,该怎么处理? - default-path
mac系统,无法找到conda命令,该怎么处理?(图6-3)

您可以在您的终端里面,临时测试一下conda的命令的路径是不是设置正确。

export PATH="/opt/anaconda3/bin:$PATH"
conda --version

苏南大叔:mac系统,无法找到conda命令,该怎么处理? - conda-path-test
mac系统,无法找到conda命令,该怎么处理?(图6-4)

如果确认正确,就把这个路径写入到系统变量里面吧。当然,大家都知道,有很多个系统配置文件可以写入,苏南大叔建议您写入~/.zshrc文件中。可以手工写入,或者用下面的命令写入:

echo 'export PATH="/opt/anaconda3/bin:$PATH"'>>~/.zshrc

记得,用source命令来刷新一下配置文件,及时生效。

source ~/.zshrc

当然,有的教程会告诉你写入到~/.bash_profile文件中,如果您纠结于这个问题的话,可以看看下面的这个解决方案。

方案二:可能的真相(推荐)

本来以为问题就到此为止,但是,在进一步的测试中,苏南大叔发现:在~/.bash_profile文件中,有相关的环境设置代码。如下:

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

苏南大叔:mac系统,无法找到conda命令,该怎么处理? - bash_profile
mac系统,无法找到conda命令,该怎么处理?(图6-5)

所以,是不是有些傻眼了呢?可能在测试环境(mac@big sur)下,无论系统默认的terminal还是iterm2,都没有读取配置文件.bash_profile,而是读取的.zshrc文件。

如果,这个假设成立的话,更好的解决方案则是:在.zshrc文件中,识别文件.bash_profile。那么,按照管理,还是可以手工写入,或者用命令写入:

echo 'source ~/.bash_profile'>>~/.zshrc

苏南大叔:mac系统,无法找到conda命令,该怎么处理? - zshrc
mac系统,无法找到conda命令,该怎么处理?(图6-6)

相关链接

总结

如果在anaconda环境下的话,conda可以创建虚拟环境,还可以代替pip命令安装模块。当然,这些都是后话。先能够识别出conda命令先。

更多conda相关文章,请点击:

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。
本站采用创作共用版权协议, 要求署名、非商业用途和相同方式共享。
转载本站内容必须也遵循“署名-非商业用途-相同方式共享”的创作共用协议。
未经许可,规模化镜像抄袭本站内容的行为,将会根据有关法律法规进行维权。
程序如此灵动~》下所有原创文章,如被用于商业用途,请您按规定支付稿费。

本站的忠实读者小伙伴,正在阅读下面这些文章: