我正在尝试运行以下内容:
source activate env-name
但是我收到一条错误消息,告诉我必须收到对activate
的来电。在Conda activate
脚本中,在开头附近有一个if块来测试"$(basename "$0")"
,特别是它是否等于activate
,在这种情况下它会引发我所指的异常。稍微摆弄脚本(即echo $0; return 1
),我发现它确实认为我传入的第0个参数是activate
而不是source
。这很令人困惑,因为我知道我的命令中包含source
,那应该是第0个参数。我不确定还有什么可做的。有没有人有任何线索?
如果它很重要,我使用zsh作为我的默认shell,似乎activate
脚本是一个bash脚本,但我认为这不重要(它不适合我,只在我的工作笔记本电脑上的这个特定环境)。我能够通过评论整个检查(以及其他一些小的改动)来解决这个问题,但在这种特殊情况下我宁愿不必这样做。
答案 0 :(得分:4)
我一直有同样的问题,我找到的唯一解决方法是:
source <PATH TO ANACONDA>/anaconda3/bin/activate <ENV NAME>
编辑:添加以下行:
export PATH=$PATH:<PATH TO ANACONDA>/anaconda3/bin:$PATH
到您的bashrc(或zsh等)会将源添加到您的路径中,您将能够正常使用source
。
答案 1 :(得分:0)
**我没有足够的声誉,所以我回答这个问题。 (我想发表评论,但我不能)
你可以解决这个问题 “运行'源激活envname'”表示必须在正确的路径或目录上运行此命令。
如果你在/ home / user / anaconda3 /上安装anaconda3
你的correnct源路径是/ home / user / anaconda3 / bin /
/home/user/anaconda3/bin/ activate tensorflow
或
cd /home/user/anaconda3/bin
. activate tensorflow
所以,我已经通过添加路径(或移动正确的路径)解决了这个问题
答案 2 :(得分:0)