在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 会报错
这种情况,你只需要用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虚拟环境内容请搜索aitechtogether.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持aitechtogether.com!