前言

在 Windows 系统上安装完Anaconda后,会多出一个 Anaconda Prompt 的终端程序以命令行的方式对环境进行设置。虽然 Anaconda 和各种 IDE 都配备了强大的环境管理功能和图形化界面,但是我觉得 Anaconda 命令行的方式最方便快捷。本篇文章旨在介绍 Mac 系统上使用终端实现 Anaconda Prompt 的功能。

一次性使用的方法

source /opt/anaconda3/bin/activate

Anaconda 默认是安装在这个路径的,如果不是的话找到路径填入即可。执行后可以在终端使用 conda 系列的命令,关闭终端以后失效。

一劳永逸的方法

/opt/anaconda3/bin 填入路径。首先确定自己使用的终端是zsh还是bash。可以在终端界面中看到,或者在终端中输入:

echo $SHELL

我使用的是 zsh,所以只有要修改 ~/.zshrc 这个文件。如果是 bash 则修改 ~/.bash_profile。接下来以 zsh 为例:

vim ~/.zshrc

填入路径:export PATH=$PATH:(程序0的path):(程序1的path):/opt/anaconda3/bin

注意每一个path用“:”分割。

随后终端输入:

source ~/.zshrc
conda init zsh

之后会显示几个配置文件的更新情况,在 ~/.zshrc 最下会加入一段 conda 相关的脚本。如果输入的是 conda init 则会对 ~/.zshrc~/.bash_profile 等所有相关文件进行修改。关闭终端重新进入,会发现终端输入栏变为了:

(base)username@username-MacBook-Pro ~ %

同时可以使用 conda 命令了。

如果需要还原的话,将~/.zshrc 中 conda 相关的脚本全部删除即可。

conda 配置

我会非常不爽终端输入栏 (base) 这个前缀,因为在大多数时候我不需要使用 conda 相关功能。可以直接使用

conda deactivate

来退出环境,但是每次打开新的终端都要手动输入一遍的话着实让我不舒服。通过以下两种方式来改善这个情况。

隐藏前缀

conda config --set changeps1 false

这条命令是隐藏环境前缀。隐藏前缀后当前的环境还是 conda 配置的环境。同时使用

conda activate

变更环境后,虽然前缀没有显示但是环境已经发生变化。
修改为 true 即可还原。

conda 环境路径:/opt/anaconda3/envs

不进入 conda 环境

conda config --set auto_activate_base false

这条命令使得打开终端后不自动进入 conda 环境。可以手动

conda activate

切换环境。修改为 true 即可还原。

默认 python 环境路径:/usr/bin

推荐参考资料中的官方文档,可以查看 conda 更多设置。

参考资料

https://docs.conda.io/projects/conda/en/latest/commands/config.html
https://docs.conda.io/projects/conda/en/latest/configuration.html

Q.E.D.