目前我发现想要用bsub命令指定在特定的conda虚拟环境中运行脚本有两种办法:
1. 在运行目标命令前使用source命令加载虚拟环境。
例如下面要运行base环境中的spades.py命令:
代码语言:shell复制#BSUB -q 5220r
#BSUB -n 1,48
#BSUB -J spades_hq
#BSUB -o spades_hq.out
#BSUB -e spades_hq.err
# >>> 激活base环境 <<<
source /fsa/home/mw_shenw/install/miniconda3/bin/activate base
# >>> 运行spades.py <<<
spades.py --careful -1 8456_HQ_R1.fq.gz -2 8456_HQ_R2.fq.gz -o spades_hq.result
然后再使用bsub < <job.lsf>
提交作业就可以了。
2. 使用conda run命令指定目标环境,但此方法仍在开发中,使用需谨慎。
要实现同上的效果,如下:
代码语言:shell复制#BSUB -q 722080tiib
#BSUB -n 1,48
#BSUB -J spades_clean
#BSUB -o spades_clean.out
#BSUB -e spades_clean.err
conda run -n base spades.py --careful -1 8456_clean1.fq.gz -2 8456_clean2.fq.gz -o spades_clean.result
最后再提交作业即可。