美文网首页
Linux中 生信分析- 批量提交任务

Linux中 生信分析- 批量提交任务

作者: 球果假水晶蓝 | 来源:发表于2023-05-27 22:40 被阅读0次

举一个简单需求:

有多个转录组数据需要比对到参考基因组
bwa mem ref_name read1 > read1.sam;
bwa mem ref_name read2 > read2.sam;
bwa mem ref_name read3 > read3.sam;
这样可以轮流一个一个比对,实际上这样也挺麻烦的,需要手动不断复制黏贴。
我们可以考虑使用更方便的方式
1.使用shell 脚本,写个循环处理多个数据的问题

for i in read*;do bwa mem ref_name ${i} > ${i}.sam;done
  1. 使用shell或者其他编程语言写个生成命令的脚本
for i in read*;do  echo "bwa mem ref_name ${i} > ${i}.sam;" > "${i}.sh";done

再在服务器中批量提交任务,
for i in *.sh ; do qsub $i;

  1. 使用 xargs 命令配合& 并行处理
ls read* | xargs -n 1 -I file sh -c 'echo " bwa mem ref_name   file >  file.sam &" '
  1. 使用 parallel
    Linux下的并行神器——parallel
  2. 使用 ParaFly
ParaFly -c cmd.list -CPU $threads

相关文章

网友评论

      本文标题:Linux中 生信分析- 批量提交任务

      本文链接:https://www.haomeiwen.com/subject/tssredtx.html