【发布时间】:2013-08-22 15:17:10
【问题描述】:
这是我的脚本:
#!/bin/bash
#script to loop through directories to merge fastq files
sourcedir=/path/to/source
destdir=/path/to/dest
for f in $sourcedir/*
do
fbase=$(basename "$f")
echo "Inside $fbase"
zcat $f/*R1*.fastq.gz | gzip > $destdir/"$fbase"_R1.fastq.gz
zcat $f/*R2*.fastq.gz | gzip > $destdir/"$fbase"_R2.fastq.gz
done
这里有大约 30 个子目录在目录 'source' 中。每个子目录都有某些 R1.fastq.gz 文件和 R2.fastq.gz 我想合并成一个 R1.fastq.gz 和 R2.fastq.gz文件,然后将合并的文件保存到目标目录。我的代码运行良好,但由于数据量大,我需要加快速度。我只想知道有什么方法可以在我的脚本中实现多线程编程吗?如何运行我的脚本以使多个作业并行运行? bash 脚本的新手,因此我们将不胜感激。
【问题讨论】:
-
既然您显然是在处理生物信息学,您应该阅读以下内容:biostars.org/p/81359biostars.org/p/63816
标签: multithreading bash parallel-processing fastq