一尘不染

Conda命令在命令提示符下工作,但不在bash脚本中工作

linux

只要我通过Linux终端(bash
shell)使用它,我的anaconda(4.5.4)都可以正常工作。但是,在bash脚本中运行conda命令根本不起作用。

脚本test.sh包含以下几行:

#!/bin/bash
conda --version
conda activate env

现在,运行会bash test.sh导致错误 test.sh: line 2: conda: command not found test.sh: line 3: conda: command not found

如推荐给anaconda版本> 4.4,我的.bashrc不包含

export PATH="/opt/anaconda/bin:$PATH",

. /opt/anaconda/etc/profile.d/conda.sh

谢谢。


阅读 840

收藏
2020-06-03

共1个答案

一尘不染

由于@darthbith的评论,我解决了这个问题。

由于conda是bash函数,并且bash函数不能传播到独立的shell(例如,通过执行bash脚本打开),因此必须添加以下行

source /opt/anaconda/etc/profile.d/conda.sh

调用conda命令之前,请先执行bash脚本。否则bash不会知道conda。

2020-06-03