【问题标题】:conda command not available in conda environment per default默认情况下,conda 命令在 conda 环境中不可用
【发布时间】:2018-10-11 16:01:57
【问题描述】:

为什么我不能从 conda 环境更新 conda,但我可以使用它?

一个例子

我可以从root 更新conda

[ravas@localhost ~]$ source activate
(base) [ravas@localhost ~]$ conda update conda
Solving environment: done

# All requested packages already installed.

我无法从p36更新它:

(base) [ravas@localhost ~]$ source activate p36
(p36) [ravas@localhost ~]$ conda update conda

PackageNotInstalledError: Package is not installed in prefix.
  prefix: /home/ravas/miniconda3/envs/p36
  package name: conda

这似乎是因为p36中没有安装conda

(base) [ravas@localhost ~]$ conda list | grep conda
# packages in environment at /home/ravas/miniconda3:
anaconda-client           1.7.1                    py37_0  
anaconda-navigator        1.9.2                    py37_0  
conda                     4.5.11                   py37_0  
conda-env                 2.6.0                         1  

(p36) [ravas@localhost ~]$ conda list | grep conda
# packages in environment at /home/ravas/miniconda3/envs/p36:
anaconda                  5.3.0                    py36_0  
anaconda-client           1.7.2                    py36_0  
anaconda-project          0.8.2                    py36_0  
pdfminer.six              20170720                 py36_0    conda-forg

但是,从p36 我可以使用 conda

(p36) [ravas@localhost ~]$ conda update anaconda
Solving environment: done

# All requested packages already installed.

这是为什么呢?

【问题讨论】:

    标签: python conda


    【解决方案1】:

    这是 shell(Bash、zsh、csh、fish 等)如何查找要执行的程序的结果。 (shell 是正在运行以处理您在终端中键入的命令的程序)。 shell 在PATH 环境变量中指定的文件夹中查找可执行文件。它按照在该变量中指定的顺序搜索这些文件夹。如果您在激活环境的情况下查看PATH 的内容,它应该类似于

    $ echo $PATH
    /home/ravas/miniconda3/envs/p36/bin:/home/ravas/miniconda3/bin:...
    

    当 shell 试图找到 conda 可执行文件时,它首先在环境目录中查找;当它在那里找不到它时,它会在 base 目录中找到它!

    【讨论】:

      【解决方案2】:

      conda 未安装在新环境中。但是您可以在这样的派生环境中获得conda

      • 激活基础环境
      • 激活您的其他环境
      • 运行conda install conda

      现在您在其他环境中有一个conda,并像往常一样使用该环境。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-11-07
        • 1970-01-01
        • 1970-01-01
        • 2018-07-11
        • 1970-01-01
        • 2019-05-28
        • 1970-01-01
        • 2019-03-09
        相关资源
        最近更新 更多