在ZSh找不到蟒蛇?

mar*_*arz 20 python macos zsh ipython anaconda

我通过命令行安装了Anaconda.bash文件.

如果我在bash,我可以打开并使用anaconda,如笔记本电脑,ipython等.

如果我将shell更改为ZSH,则所有anaconda命令都显示为"未找到".

我如何才能在zsh中运行?

我在OSx Sierra上使用Mac.

提前致谢,

Jon*_*ler 22

我有类似的问题.

我检查了我的.profile,.bashrc.bash_profile点文件,以便找到我可以复制到我的.zshrc文件中的任何PATH信息.果然:

# added by Miniconda3 4.2.12 installer
export PATH="/Users/username/miniconda3/bin:$PATH"
Run Code Online (Sandbox Code Playgroud)

运行source ~/.zshrc这些行后,我可以启动我的jupyter笔记本服务器.


Seb*_*ees 11

尽管我无法在Mac上进行测试,(我已经安装了Linux Zsh)它也同样适用于您:只需执行

/(your conda installation path)/bin/conda init zsh
Run Code Online (Sandbox Code Playgroud)

并重新启动您的zsh shell。init命令将相应地更改〜/ .zshrc文件,正确设置PATH并稍稍更改PS1(这是大多数答案手动完成...)。

  • 我可以确认这个解决方案适用于 MacOS。我认为这是最简单、最干净的解决方案 (15认同)
  • @marz 这应该是 2022 年公认的答案...... (3认同)
  • 这实际上是他们的[文档](https://docs.conda.io/projects/conda/en/latest/user-guide/install/linux.html#using-with-fish-shell)中推荐的内容,只需替换` Fish` 与 `zsh` 或您想要的 shell。 (2认同)
  • 看来 anaconda 现在将激活并显示默认环境“base”,我想要的只是将 anaconda bin 放入我的路径中。 (2认同)
  • 这是迄今为止最好的解决方案 (2认同)

use*_*706 10

直接来自 Anaconda 安装文档

如果您使用的是 macOS Catalina,新的默认 shell 是 zsh。您将需要运行:

source <path to conda>/bin/activate

其次是:

conda init zsh

不幸的是,由于某种原因,这仅在命令行安装部分提到。如果您是从 GUI 安装的,您仍然需要执行此操作。


Vin*_*ang 9

这在我的 macOS 上对我有用

https://medium.com/@sumitmenon/how-to-get-anaconda-to-work-with-oh-my-zsh-on-mac-os-x-7c1c7247d896


使用以下命令打开 .bash_profile 文件:

open ~/.bash_profile
Run Code Online (Sandbox Code Playgroud)

anaconda 安装程序在文件末尾添加了一段代码。收到。

我的看起来像这样:

# added by Anaconda3 5.3.0 installer
# >>> conda init >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$(CONDA_REPORT_ERRORS=false '/anaconda3/bin/conda' shell.bash hook 2> /dev/null)"
if [ $? -eq 0 ]; then
    \eval "$__conda_setup"
else
    if [ -f "/anaconda3/etc/profile.d/conda.sh" ]; then
        . "/anaconda3/etc/profile.d/conda.sh"
        CONDA_CHANGEPS1=false conda activate base
    else
        \export PATH="/anaconda3/bin:$PATH"
    fi
fi
unset __conda_setup
# <<< conda init <<<
Run Code Online (Sandbox Code Playgroud)

现在打开你的 .zshrc 文件:

open ~/.zshrc
Run Code Online (Sandbox Code Playgroud)

将复制的代码粘贴到最后并保存。然后运行下面的命令,

source ~/.zshrc
Run Code Online (Sandbox Code Playgroud)

在 iterm2 或终端上时,您应该会(base)在其中看到一个弹出窗口


m00*_*0am 8

conda 4.4.02017-12-20发布)以来,将conda添加到PATH的建议方法已更改。代替Jonathan的答案中描述的方法,这应该使用conda安装文件夹中的conda.sh脚本完成etc/profile.d/。之后,您可以激活基本环境。有关为何如此的更多信息,请参见conda changelog

我需要添加以下几行.zshrc

.  ~/miniconda3/etc/profile.d/conda.sh
conda activate base
Run Code Online (Sandbox Code Playgroud)

假设(mini)conda是使用默认参数安装的,即安装到主文件夹中。


dre*_*cko 7

从@ m00am的答案开始,从Anaconda 4.5.11开始,bashAnaconda添加的代码.bashrc似乎在中也运行得很好zsh,因此可以很好地将其复制到您的.zshrc作品中。就我而言,代码如下所示:

# >>> conda init >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$(CONDA_REPORT_ERRORS=false '/home/my-account/anaconda3/bin/conda' shell.bash hook 2> /dev/null)"
if [ $? -eq 0 ]; then
    \eval "$__conda_setup"
else
    if [ -f "/home/my-account/anaconda3/etc/profile.d/conda.sh" ]; then
        . "/home/my-account/anaconda3/etc/profile.d/conda.sh"
        CONDA_CHANGEPS1=false conda activate base
    else
        \export PATH="/home/my-account/anaconda3/bin:$PATH"
    fi
fi
unset __conda_setup
# <<< conda init <<<
Run Code Online (Sandbox Code Playgroud)


小智 7

如果您在此之后偶然发现您将终端从 bash 更改为 zsh,因为您将 macOS 从 Sierra 升级到 Catalina,那么 Sebastian Thees 的答案稍作更改即可完成这项工作。

首先,切换回 bash

chsh -s /bin/bash
Run Code Online (Sandbox Code Playgroud)

您的旧 conda 环境都非常活跃。然后,在 zsh 上激活 conda

conda init zsh
Run Code Online (Sandbox Code Playgroud)

最后切换回 zsh

chsh -s /bin/zsh
Run Code Online (Sandbox Code Playgroud)

以这种方式跟踪您的 conda 安装文件夹无需大惊小怪,这对于像我这样没有记忆的人来说是一个加分项。


Bob*_*sta 5

来自他们的文档(这对我有用):如果您使用的是 macOS Catalina,则新的默认 shell 是 zsh。source <path to conda>/bin/activate相反,您需要先运行conda init zsh.

对于我的特定安装(通过双击安装程序完成),这最终是source /opt/anaconda3/bin/activate