使用anaconda环境而不激活?(例如在Crontab中)

est*_*est 10 python virtualenv uwsgi anaconda miniconda

读这个

http://conda.pydata.org/docs/using/envs.html

可以直接运行conda python而不必source activate xxx吗?

在VirtualEnv中,您可以找到python可执行文件的确切位置并运行类似的东西

./path/to/my/venv/bin/python xxx.py

然后xxx.py将在环境中执行.在Crontab中编写one-linders非常方便.

我可以用anaconda/miniconda环境做同样的事情吗?

我一直在Centos 6.5上尝试这个,系统有python 2.5太旧了.

我用miniconda安装了python 2.7,现在我已经安装了uWSGI,直接执行它说

Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
ImportError: No module named site
Run Code Online (Sandbox Code Playgroud)

但是当在conda env下执行它时它按预期工作.

小智 13

如果conda在你的道路上:

source activate <env name> && python xxx.py && source deactivate

如果conda不在您的路径上但已安装:

source /path/to/conda/bin/activate /path/to/desired/env_name/ && python xxx.py && source deactivate


lin*_*k89 7

您可以使用conda run(自 v3.6 起)使用指定的环境来运行命令,而无需激活环境。例如

# run scripts or commands against specific environment
conda run -n myenv python start_server.py

# or run an python interactively 
conda run -n myenv --no-capture-output python
Run Code Online (Sandbox Code Playgroud)