在shell脚本中激活conda虚拟环境的方法总结

在shell脚本中激活conda虚拟环境

常用命令行激活conda的env的命令有2种:

conda activate ENV_NAME
source /home/zhaohuiyao/minconda3/bin/activate ENV_NAME

但是如果你想在一个shell脚本中激活conda的env,有许多办法。我这里只提供了一种我使用的。

情况1: 直接使用conda activate ENV_NAME 会报错

在shell脚本中激活conda虚拟环境的方法总结_第1张图片

这种情况,你只需要用source /home/zhaohuiyao/miniconda3/bin/activate ENV_NAME即可,再次运行shell脚本。

情况2: 出现source:not found的报错情况,这与你的linux版本有关以及shell解析器有关

请添加图片描述

ubuntu系统的默认shell解析器是dash,你需要将dash改成bash,要root权限,我没有。(Centos就不会有这个问题)

查看系统版本信息命令:cat /proc/version

查看默认解析器命令:ls -l /bin/sh

请添加图片描述

最简单:你的shell首行是#!/bin/bash,那么你只需要在执行脚本时用/bin/bash ./run.sh 即可,就能识别source命令

因为我们一般执行shell脚本的方法是:

①提高权限:chomd 775 ./run.sh,然后直接./run.sh

②直接:sh ./run.sh

这两种都是用默认shell解析器,而Ubuntu默认是dash,因此会有冲突

当然如果你有root权,你可以,dpkg-reconfigure dash,选择no,之后再次运行ls -l /bin/sh,就会是/bin/sh -> bash

查看自己shell解析器:grep zhaohuiyao /etc/passwd

总结

到此这篇关于在shell脚本中激活conda虚拟环境的文章就介绍到这了,更多相关shell脚本激活conda虚拟环境内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(在shell脚本中激活conda虚拟环境的方法总结)