ubuntu使用shell脚本切换conda虚拟环境
使用shell脚本来切换conda虚拟环境,容易报conda
找不到的错误,这是因为我们没有对conda
进行source
,如果报错source: not found
错误表明在脚本中找不到source命令,这通常是因为脚本运行时没有使用Bash解释器。Bash是默认的Unix shell,但是如果你使用sh命令来运行脚本,可能会使用系统中的其他shell,比如dash。而source命令是Bash的内置命令,不是所有shell都支持。所以,要确保你的脚本以Bash解释器运行,你可以修改脚本的第一行为#!/bin/bash
,或者直接使用bash your_shell_script.sh
来运行脚本。
有两种解决办法来指定路径
第一种,无论是anaconda3
还是miniconda
都可以
#!/bin/bash
# source环境
CONDA_BASE=$(conda info --base)
source "$CONDA_BASE/etc/profile.d/conda.sh"
# 激活虚拟环境
conda activate yourenv
# 运行脚本
python your_script.py
第二种,需要手动进行修改
#!/bin/bash
# source环境
source "/home/usrname/anaconda3/etc/profile.d/conda.sh"
# 激活虚拟环境
conda activate yourenv
# 运行脚本
python your_script.py
将这里的usrname
替换成你自己的即可。
然后运行.sh
脚本的时候一定要使用bash
而不是使用sh
bash your_shell_script.sh