具体流程见
trim_galore去接头(并行处理)
命令为
dir=/home/kelly/wesproject/4_clean/
cat config |while read id
do
arr=${id}
fq1=${arr[0]}
fq2=${arr[1]}
nohup trim_galore -q 25 --phred33 --length 36 -e 0.1 --stringency 3 --paired -o $dir $fq1 $fq2 &
done
config是需要进行处理的文件列表
trim_galore命令这里用的也比较简单,总结下处理时遇到的问题
1 关于一次可以并行处理多少的问题
我从15个到20个到100个最后尝试几百个,同时处理,是可行的。但最佳是不要超过300个样本,这好像是我的服务器能处理的最大量。
2 中间文件
开始处理文件是fq 1
,也就是先对_1
文件进行去接头处理,开始生成的文件是
├── [ 581] SRR8707681_1.fastq.gz_trimming_report.txt
├── [2.9G] SRR8707681_1_trimmed.fq.gz
然后同时对-2
进行去接头处理,但往往是对1完成大半后
├── [ 581] SRR8707698_1.fastq.gz_trimming_report.txt
├── [2.9G] SRR8707698_1_trimmed.fq.gz
├── [5.2K] SRR8707698_2.fastq.gz_trimming_report.txt
├── [5.0K] SRR8518370_1.fastq.gz_trimming_report.txt
├── [2.4G] SRR8518370_1_trimmed.fq.gz
├── [ 581] SRR8518370_2.fastq.gz_trimming_report.txt
├── [1.5G] SRR8518370_2_trimmed.fq.gz
当1和2都去接头完成后,就会开始生成val文件,所以接下来会存在6个对应的文件,并且除report外都很大,下面是正在生成val
所以,这个如果并行很多样本,要空间够大
├── [4.7K] SRR8518401_1.fastq.gz_trimming_report.txt
├── [1.9G] SRR8518401_1_trimmed.fq.gz
├── [955M] SRR8518401_1_val_1.fq.gz
├── [4.7K] SRR8518401_2.fastq.gz_trimming_report.txt
├── [2.0G] SRR8518401_2_trimmed.fq.gz
├── [1.0G] SRR8518401_2_val_2.fq.gz
最后,
trimmed
文件自动删除,只留下val
文件
├── [4.7K] SRR8518401_1.fastq.gz_trimming_report.txt
├── [1.8G] SRR8518401_1_val_1.fq.gz
├── [4.9K] SRR8518401_2.fastq.gz_trimming_report.txt
├── [2.0G] SRR8518401_2_val_2.fq.gz
3 top和ps-ef进程
%cpu id开始很小,随着数据处理完成会越来越大
ps-ef到最后也都会显示已经结束
所以 在没有学会脚本判断进程是否结束之前,会用top和ps -ef来判断
htop
更好用