用它的完整路径激活conda环境

bSr*_*bSr 12 python python-3.x anaconda conda

通常,我们使用命令激活conda环境:

source activate env_name
Run Code Online (Sandbox Code Playgroud)

但是,有可能用它的完整路径激活conda环境吗?例如:

source (fullpath)/bin/activate
Run Code Online (Sandbox Code Playgroud)

当我这样做时,它会激活anaconda的默认环境,即根环境.

dar*_*ith 12

conda 4.4及更新的更新:

您需要指定要激活的conda环境路径.新conda activate命令不再需要"激活脚本"的完整路径,因为该命令现在"内置"到conda.所以类似于:

conda activate (fullpath)/env-name-here
Run Code Online (Sandbox Code Playgroud)

应该管用.


您指定的命令会激活root环境,因为您没有为conda提供要激活的环境,这root是默认设置.例如,如果要激活特定环境,则可以使用activate脚本的完整路径来执行此操作

source (full path to main Anaconda directory)/bin/activate (fullpath)/env-name-here
                                                           ^^^^^^^^^^^^^^^^^^^^^^^^
                                                           You're missing this part
Run Code Online (Sandbox Code Playgroud)

  • 有时,如果环境文件夹中有“activate”脚本,OP 提到的“source (fullpath)/bin/activate”确实可以工作。例如,当使用 [conda-pack](https://conda.github.io/conda-pack/) 进行环境移动时,可以使用 `source my_env/bin/activate` 来激活环境(请参阅[此处] (https://conda.github.io/conda-pack/#commandline-usage))。当然,也可以使用`conda activate ./my_env`。 (2认同)

Grr*_*Grr 7

您可以通过将路径传递给环境来激活不在conda环境列表中的环境.例如,您可以使用-p参数在任何目录中创建环境.像这样:

conda create -p /path/to/some/location/mytestenv/ python=3.5
Run Code Online (Sandbox Code Playgroud)

不会显示conda env list,但您可以使用以下命令激活它:

source activate /path/to/some/location/mytestenv
Run Code Online (Sandbox Code Playgroud)