康达激活不起作用?

Posted

技术标签:

【中文标题】康达激活不起作用?【英文标题】:Conda activate not working? 【发布时间】:2018-04-25 01:46:33 【问题描述】:
 gonzo  ~/a/packages  conda env list
# conda environments:
#
ppo_latest               /nohome/jaan/abhishek/anaconda3/envs/ppo_latest
root                  *  /nohome/jaan/abhishek/anaconda3

 gonzo  ~/a/packages  conda activate ppo_latest
 gonzo  ~/a/packages  which python                                                                                     (ppo_latest)
/nohome/jaan/abhishek/anaconda3/bin/python
 gonzo  ~/a/packages  conda deactivate                                                                                 (ppo_latest)
 gonzo  ~/a/packages  which python
/nohome/jaan/abhishek/anaconda3/bin/python

环境在没有错误的情况下被激活。然后我们检查它指的是哪个python。没有变化,为什么?

【问题讨论】:

你检查你的 env 文件夹了吗?我的是空的,因为我没有提供 python 版本。如果它的空被激活但没有 python。 在你的 cmd 中使用这个:activate <envname> 对于遇到此问题的其他人,问题也可能是这个已知的错误:github.com/conda/conda/issues/9392 关闭当前终端并打开另一个终端对我有用。 【参考方案1】:

我有同样的问题,但对于 linux 这有效: 在终端类型:

$ bash
$ conda init
$ cd /path_that_include_env_dir
$ conda activate ./<env_name>

$ conda activate /env_path

“env_path”是完整的环境路径:/home/usr/env_dir

检查环境列表及其路径 $ conda 环境列表

【讨论】:

【参考方案2】: 在cmd中运行conda init 重启cmd 运行conda activate envName

【讨论】:

【参考方案3】:

我根据Apple提示消息将我的shell从bash更改为zsh并重新启动终端,这样做后它对我有用。

【讨论】:

【参考方案4】:

我刚刚在 miniconda 中创建了一个新环境,但是当尝试在 VSCode 的终端中激活它时,它给出了这个

CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'. If using 'conda activate' from a batch script, change your invocation to 'CALL conda.bat activate'.

然后我在VSCode设置中找到了这个选项,terminal.integrated.shellArgs

默认情况下,它是“null”,但将其更改为“命令提示符”,它使 VSCode 终端中的“conda activate [my env]”命令起作用。

【讨论】:

【参考方案5】:

从 conda 4.10.1 开始,以下是我在 Windows 上使用 Sublime text 3(cmd 和 Git cmd 相同)中的 Git Bash 终端的方法:

$ source activate env_name

对我来说:$ activate env_name$ conda activate env_name 不起作用!

检查激活的 conda 环境列表,在我的例子中,我使用

$ conda env list

$ conda info --envs

激活的环境以*开头

请注意,我已经将 anaconda 添加到我的路径中。

【讨论】:

它对我有用,是迄今为止我找到的最佳解决方案。(我使用的是 Google Cloud Platform)。【参考方案6】:

set-executionpolicy remotesigned Set-ExecutionPolicy 不受限制

【讨论】:

请添加格式和解释。【参考方案7】:

您好,让我分享一下对我有用的方法。 (WINDOWS 用户)

    将 conda 添加到路径(即添加到您的环境变量 - 确切地说是脚本文件夹),即 C:\Users\kboys\anaconda3\Scripts 重新打开 cmd,输入 activate 和目标环境的名称,即

$ activate &lt;env_name&gt;

$ activate tensorflow

注意这种方式你不需要调用 conda。

【讨论】:

【参考方案8】:

anaconda函数默认是不导出的,可以使用如下命令来完成:

source ~/anaconda3/etc/profile.d/conda.sh

conda activate my_env

【讨论】:

【参考方案9】:

您是否尝试过 Anaconda 命令提示符cmd 它对我有用。在 PowerShell 中没有给出错误并且激活不起作用可能是一些路径问题。

【讨论】:

【参考方案10】:

只需在你的 cmd 中使用这个命令:

activate &lt;envname&gt;

像魅力一样工作! (适用于windows,不了解mac)

【讨论】:

【参考方案11】:

在 Linux 中安装 conda 后,如果您尝试创建 env,只需键入 bash 并稍后按 Enter 即可创建 env

【讨论】:

【参考方案12】:

如果您的控制台在运行conda activate base 后没有显示(base),请尝试运行:

conda init

然后运行conda activate &lt;your_env&gt; 应该在shell 提示符的开头显示(&lt;your_env&gt;) 的名称。

这在 Windows 上对我有用。我的 PATH 环境变量设置正确,所以 conda activate base 没有引发任何错误,但悄悄地失败了。

【讨论】:

【参考方案13】:

如果对您没有任何帮助,您可以通过 conda 指定您的 python 环境设置的完整路径。

对我来说,我使用 conda 设置了一个名为“testenv”的环境。

我使用

搜索了所有python环境
whereis python | grep 'miniconda'

它返回了一个 python 环境列表。然后我使用以下命令运行 my_python_file.py。

~/miniconda3/envs/testenv/bin/python3.8 my_python_file.py

你也可以在 windows 上做同样的事情,但是查找 python 和 conda python 环境有点不同。

【讨论】:

【参考方案14】:

默认情况下,函数不会导出以在子shell中可用。我建议你这样做:

source ~/anaconda3/etc/profile.d/conda.sh
conda activate my_env

在上述命令中,将 ~/anaconda3/ 替换为您的 miniconda / anaconda 安装路径。

【讨论】:

在没有活动的 shell 接口(或伪接口)的情况下工作,这是迄今为止最好的也是唯一的解决方案。 请注意,您也可以使用 $CONDA_PREFIX_1,而不是 ~/anaconda3 以获得更强大的解决方案【参考方案15】:

以下是在 Windows 上以简洁的步骤使用 VS Code 中的 Git Bash 终端对我有用的方法:

    source activate env-name - 您现在应该会看到您的行附加了 (base) 标记。

    在调用source activate 后,我发现以下conda activate 命令可以工作:即conda activate env2-name

Git Bash(作为 VS Code 终端)对我不起作用的地方:activate env-nameconda activate env-name

不完全确定为什么在 VS Code 上的 Git Bash 终端上会出现这种特定行为,但接受的答案 + 我发现的这个 *** question 可能会提供线索。

【讨论】:

【参考方案16】:

对于 Windows,使用 Anaconda Powershell 提示

【讨论】:

【参考方案17】:

我刚刚遇到了类似的问题。 最近开始在windows上开发,所以习惯了PowerShell。 具有讽刺意味的是,当尝试在 Git-bash 中使用“conda activate”时出现错误

$ conda activate obf

CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
If using 'conda activate' from a batch script, change your
invocation to 'CALL conda.bat activate'.

To initialize your shell, run

    $ conda init <SHELL_NAME>

Currently supported shells are:
  - bash
  - cmd.exe
  - fish
  - tcsh
  - xonsh
  - zsh
  - powershell

See 'conda init --help' for more information and options.

IMPORTANT: You may need to close and restart your shell after running 'conda init'. 

按照指示在我的 PowerShell(提升)中运行命令对我来说是诀窍。

conda init powershell 

这在所有终端环境中都应该是正确的,只是奇怪的 PowerShell 本身没有返回此错误。

【讨论】:

当我在另一个上下文中遇到同样的错误时,我跟随***.com/questions/44537131/… 并在那里@User1024 的答案,添加了一个Path 变量。 哇!尝试了 1000 种方法,但最后你的小费奏效了。我只需要使用 CALL conda.bat activate . 启动我的 bat 文件 在我的 cmd 中执行 conda init 后,conda activate 工作了,谢谢回答【参考方案18】:

此解决方案适用于不想设置 PATH 的用户。

有时可能不需要设置 PATH。在我的例子中,我安装了 Anaconda 和另一个安装 Python 的软件来访问 API,设置 PATH 会产生难以解决的冲突。

Anaconda 目录下(在本例中为Anaconda3)有一个名为envs 的子目录,其中存储了所有环境。使用conda activate some-environment时,将some-environment替换为环境的实际目录位置。

在我的例子中,命令如下。

conda activate C:\ProgramData\Anaconda3\envs\some-environment

【讨论】:

【参考方案19】:

在windows环境下使用“anaconda prompt”而不是“command prompt”。

【讨论】:

谢谢。在 Windows 10 上的 Powershell 中,什么也没发生,没有错误消息,也没有环境激活。使用“anaconda prompt”有效。【参考方案20】:

我刚刚用 conda 创建了一个新环境,但情况有所不同。我的sys.path 有一点不正确,直到我想出办法。

因此,我想向其他对 conda 的更改感到困惑的人指出,如果您升级了 conda 并创建了一个环境,它现在会告诉您(与以前的行为相反):

# To activate this environment, use
#
#     $ conda activate test
#
# To deactivate an active environment, use
#
#     $ conda deactivate

因此,激活/停用环境的方法就是像上面那样进行。

确实,如果您从旧版本的 conda 升级并尝试上述操作,您可能会看到以下有用的消息(我确实这样做了):

CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
If your shell is Bash or a Bourne variant, enable conda for the current user with

    $ echo ". ~/anaconda/etc/profile.d/conda.sh" >> ~/.bash_profile

or, for all users, enable conda with

    $ sudo ln -s ~/anaconda/etc/profile.d/conda.sh /etc/profile.d/conda.sh

The options above will permanently enable the 'conda' command, but they do NOT
put conda's base (root) environment on PATH.  To do so, run

    $ conda activate

in your terminal, or to put the base environment on PATH permanently, run

    $ echo "conda activate" >> ~/.bash_profile

Previous to conda 4.4, the recommended way to activate conda was to modify PATH in
your ~/.bash_profile file.  You should manually remove the line that looks like

    export PATH="~/anaconda/bin:$PATH"

^^^ The above line should NO LONGER be in your ~/.bash_profile file! ^^^

更改上述内容解决了我在激活的 conda 环境中使用 sys.path 的问题。

【讨论】:

以上说明假定 Mac/Linux 环境参考了 Bash 或 Bourne 变体 shell。标准的 Windows CMD shell 怎么样?我的 miniconda3/etc/profile.d 文件夹只有 conda.sh 和 conda.csh 文件,但没有 Windows conda.bat 版本。是否存在支持这些说明的方法?谢谢。 我遵循了这些说明,但我仍然收到该错误,即使 conda 似乎可以正常工作。这很奇怪。【参考方案21】:

试试这个:

export PATH=/home/your_username/anaconda3/bin:$PATH
in ~/.bashrc

然后source ~/.bashrc 这对我同样适用。

【讨论】:

这也是没有主文件夹的安装的答案。有时只有一个根“用户”而没有主目录。只需将 miniconda/bin 或 anaconda3/bin (无论您安装在哪里)的路径添加到 $PATH ,它就应该开始运行了。例如export PATH=/root/minconda3/bin:$PATH【参考方案22】:

要通过 Windows CMD 而不是 Anaconda 提示符 使用“conda activate”: (针对 okorng 的问题,虽然使用 Anaconda Prompt 是首选)

首先,我们需要将 activate.bat 脚本添加到您的路径中: 通过 CMD:

set PATH=%PATH%;<your_path_to_anaconda_installation>\Scripts

或通过控制面板,打开“用户帐户”并选择“更改我的环境变量”。

然后直接从 Windows CMD 调用:

activate <environment_name>

不使用前缀“conda”。

(在带有 Anaconda3-5.2.0 的 Windows 7 Enterprise 上测试)

【讨论】:

请注意,您需要拥有管理员权限才能完成此操作。如果您在没有管理员权限的情况下使用上述过程添加路径,则不会引发错误。但是,如果您关闭并重新打开命令提示符并运行 echo %PATH%,您的更改将不会出现。 @Foggy 您还可以在没有管理员权限的情况下将 Anaconda\Scripts PATH 添加到“用户环境变量”中(在 Win 7 和 Win 10 上)。然后,这些将“持续”用于新的命令提示符(在您的机器第一次注销/重新启动之后)。 @stephinity 谢谢这是唯一对我有用的解决方案,在 Windows 10 环境中。【参考方案23】:

从 conda 4.4 开始,命令

conda activate <envname>

在所有平台上都是相同的。将conda 添加到非Windows 平台的PATH 环境变量的过程(在Windows 上,您应该使用Anaconda Prompt),以及环境激活过程的更改,在conda 4.4 的release notes 中有详细说明.0.


对于低于 4.4 的 conda 版本,命令是任一

source activate <envname>

在 Linux 和 macOS 上或

activate <envname>

在 Windows 上。您需要删除conda

【讨论】:

无法将源与鱼一起使用。 那么您需要将该要求添加到您的帖子中。 另外,根据这篇文章,source 是正确的命令:superuser.com/a/84624/229278 您可能需要安装一些额外的依赖项:superuser.com/a/1235985/229278 我在 Windows 上获得CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'. 后发现了这个问题。解决方法是使用activate ... 而不是conda activate ... @darthbith。这是你的答案,我不是 python 专家,所以做你认为最好的。但是,我在 Windows 上有 conda 4.5.4,对我来说 conda activate ... 返回 CommandNotFoundError,而 activate ... 按我的预期工作。

以上是关于康达激活不起作用?的主要内容,如果未能解决你的问题,请参考以下文章

激活参数在 GridSearch 中不起作用

自定义激活电子邮件在 Django 中不起作用

激活和paintied在ext js中不起作用

在 weka 中,simpleEducationalLearningSchemes 包不起作用

Rails best_in_place jQuery 就地编辑:激活器按钮不起作用

在我重新激活 WiFi/移动网络之前,服务中的 Android 位置侦听器不起作用