2017-03-18 51 views
1

我遵循conda_PR_545,conda issues 4221,但仍然无法在Ubuntu上运行。无法使用conda在Fish-shell中运行源代码激活

here下载conda.fish后,mv到anaconda3/bin /。

在〜/ .config/fish/config.fish的末尾添加“source /home/phejimlin/anaconda3/bin/conda.fish”。

conda activate spark_env 
Traceback (most recent call last): 
File "/home/phejimlin/anaconda3/bin/conda", line 6, in 
sys.exit(conda.cli.main()) 
File "/home/phejimlin/anaconda3/lib/python3.6/site-packages/conda/cli/main.py", line 161, in main 
raise CommandNotFoundError(argv1, message) 
TypeError: init() takes 2 positional arguments but 3 were given 

activate spark_env 
Error: activate must be sourced. Run 'source activate envname' 
instead of 'activate envname'. 

难道我错过了什么?

回答

12

如果按照https://github.com/conda/conda/issues/2611,步骤(从开始):

[[email protected] ~]# fish 
[email protected] ~# echo $FISH_VERSION 
2.4.0 
[email protected] ~# bash Miniconda2-4.3.11-Linux-x86_64.sh -b -p /conda 
[email protected] ~# set -gx PATH /conda/bin $PATH 
[email protected] ~# source (conda info --root)/etc/fish/conf.d/conda.fish 
[email protected] ~# conda activate root 
[email protected] ~# conda create -yn fishtest        (root) 
Fetching package metadata ......... 
Solving package specifications: 
Package plan for installation in environment /conda/envs/fishtest: 

# 
# To activate this environment, use: 
# > source activate fishtest 
# 
# To deactivate this environment, use: 
# > source deactivate fishtest 
# 

[email protected] ~# conda activate fishtest        (root) 
[email protected] ~#             (fishtest) 
[email protected] ~# conda deactivate fishtest       (fishtest) 
+1

WOW!太神奇了,它正在工作! 我只是将“source(conda info --root)/etc/fish/conf.d/conda.fish”添加到我的config.fish中,它正在工作! 谢谢,我几乎花了整整一天的时间在这个环境设置上。 – Jim

+0

我的答案基本上是你的答案Nehal,好像细节被埋在你的答案中,所以我写了我在我的水平 – Marc

+0

为什么这项工作?谢谢! –

6

鱼2.6.0畅达4.3.27的:下面的步骤可以为issue is addressed

更新配置更改

注意到您conda的位置

conda info --root 
/Users/mstreeter/anaconda # this is my <PATH_TO_ROOT> 

添加行~/.config/fish/config.fish

source <PATH_TO_ROOT>/etc/fish/conf.d/conda.fish 

更新约定

通常你会逃避bash

source activate <environment> 
source deactivate <environment> 

以下现在你必须从fish

conda activate <environment> 
conda deactivate <environment> 
以下0

问题

所以这样做后,我不能够设置fish为我的默认外壳,并将它仍与conda正常工作。目前,我必须先进入我的默认外壳,然后输入fish,外壳按预期工作。我会在找到如何让它完全工作而无需每次登录我的终端时明确选择fish来更新此内容

相关问题