Linux提交作业需在虚拟环境中运行

文章介绍了在进行Python开发和气象研究时如何利用虚拟环境管理不同项目所需的包,如cdo和nco。在PBS作业提交系统中,需在脚本中激活虚拟环境,通过conda命令进行切换。遇到Illegalvariablename.错误时,应检查脚本的Shell类型。正确配置后,可在作业脚本中顺利使用condaactivate。
摘要由CSDN通过智能技术生成

虚拟环境是运行python的好方法。大部分时候我们只需配备不同的虚拟环境以满足python代码中需要的不同包。除python之外,气象相关研究中常常使用cdo、nco等工具,也可以在虚拟环境中轻松配置。

然而,当我们需要通过作业提交系统提交作业运行上述代码或相关命令时,就需要在提交脚本中配置激活虚拟环境的语言。

以PBS作业提交系统为例,其语法可以为csh或bash。需要激活虚拟环境时,在脚本中增加:

# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/public/home/xxx/0.library/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
    eval "$__conda_setup"
else
    if [ -f "/public/home/xxx/0.library/anaconda3/etc/profile.d/conda.sh" ]; then
        . "/public/home/xxx/0.library/anaconda3/etc/profile.d/conda.sh"
    else
        export PATH="/public/home/liuwenyu/0.library/anaconda3/bin:$PATH"
    fi
fi
unset __conda_setup
# <<< conda initialize <<<

conda activate nco

该段代码在安装anaconda成功后会在bashrc文件中出现,可以直接去copy。

之后就可以在脚本中通过conda activate命令去切换你的虚拟环境了。

如果出现“Illegal variable name.”,检查一下你的脚本首行使用的csh还是bash,修改测试一下就行。

#!/usr/bin/bash -f

终于找到了正确方法,记录一下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值