Android mac os-如何从bash脚本创建和激活conda(虚拟环境)?
如何从bash脚本创建和激活conda(虚拟环境) 我已经读过很多关于堆栈溢出的文章,考虑到我是bash的初学者,这些文章对我来说都没有任何意义。而且,它们中的大多数与virtualenv有关,而不是与conda有关,这增加了混淆 我真的不明白source或exec是如何工作的,或者我是否需要为此使用它 我所要做的就是从bash脚本中创建一个conda虚拟环境,然后激活它。然后在新激活的“环境”上通过bash脚本运行更多命令 相反,当我运行下面的脚本时,所发生的情况是环境已经创建,但它没有被激活。终端要求提示继续创建虚拟环境也是没有帮助的(需要人工输入不是很好) 以下是脚本:Android mac os-如何从bash脚本创建和激活conda(虚拟环境)?,android,bash,shell,anaconda,conda,Android,Bash,Shell,Anaconda,Conda,如何从bash脚本创建和激活conda(虚拟环境) 我已经读过很多关于堆栈溢出的文章,考虑到我是bash的初学者,这些文章对我来说都没有任何意义。而且,它们中的大多数与virtualenv有关,而不是与conda有关,这增加了混淆 我真的不明白source或exec是如何工作的,或者我是否需要为此使用它 我所要做的就是从bash脚本中创建一个conda虚拟环境,然后激活它。然后在新激活的“环境”上通过bash脚本运行更多命令 相反,当我运行下面的脚本时,所发生的情况是环境已经创建,但它没有被激活
#!/bin/bash
dirname=$1
conda create -n $1 python=2.7
source activate $1
终端显示:
Jills-MBP:Desktop jillr$ bash site_builder.sh blah
Fetching package metadata: ....
Solving package specifications: ..........
Package plan for installation in environment /Users/jillr/anaconda/envs/blah:
The following NEW packages will be INSTALLED:
openssl: 1.0.2l-0
pip: 9.0.1-py27_1
python: 2.7.13-0
readline: 6.2-2
setuptools: 27.2.0-py27_0
sqlite: 3.13.0-0
tk: 8.5.18-0
wheel: 0.29.0-py27_0
zlib: 1.2.8-3
Proceed ([y]/n)?
解决方案愚蠢到用“source”而不是“bash”调用整个脚本。啊,啊,啊 而不是
bash site_builder.sh blah
使用
如果有人真的解释了为什么这会解决它,那将是一个幻想,因为我仍然不明白“源”在做什么
,“source是一个bash shell内置命令,它在当前shell中执行作为参数传递的文件的内容。”
而不是什么别的外壳
“源脚本在当前shell环境中读取并执行文件名中的命令”
他们将在什么样的壳中执行
什么shell是“bash site_builder.sh blah”而不是“source site_builder.sh blah”?解决方案愚蠢到用“source”而不是“bash”调用整个脚本。啊,啊,啊 而不是
bash site_builder.sh blah
使用
如果有人真的解释了为什么这会解决它,那将是一个幻想,因为我仍然不明白“源”在做什么
,“source是一个bash shell内置命令,它在当前shell中执行作为参数传递的文件的内容。”
而不是什么别的外壳
“源脚本在当前shell环境中读取并执行文件名中的命令”
他们将在什么样的壳中执行
什么shell是“bash site_builder.sh blah”而不是“source site_builder.sh blah”?