gpt4 book ai didi

for-loop - 在多个 Illumina 双端读取文件上使用 trimomatic

转载 作者:行者123 更新时间:2023-12-02 21:32:16 24 4
gpt4 key购买 nike

我想使用trimmomatic http://www.usadellab.org/cms/?page=trimmomatic从配对末端 Illumina 转录组数据中删除已知的接头序列。

我能够运行该程序进行一组配对读取。但是,我真的很想运行一个命令,该命令将在给定目录中的多个配对读取上运行。

我的目录中的文件采用以下格式

运行 number_uniqueidentifier_fwd 或 rev(其中 1=fwd 且 2=rev).fastq.gz

1_EupS0510_1.fastq.gz
1_EupS0510_2.fastq.gz
1_EupS0675_1.fastq.gz
1_EupS0675_2.fastq.gz
1_EupM0685_1.fastq.gz
1_EupM0685_2.fastq.gz
1_Ela319_1.fastq.gz
1_Ela319_2.fastq.gz
1_EupAx10439_1.fastq.gz
1_EupAx10439_2.fastq.gz
1_EupTT12454_1.fastq.gz
1_EupTT12454_2.fastq.gz
2_EupS0510_1.fastq.gz
2_EupS0510_2.fastq.gz
2_EupS0675_1.fastq.gz
2_EupS0675_2.fastq.gz
2_EupM0685_1.fastq.gz
2_EupM0685_2.fastq.gz
2_Ela319_1.fastq.gz
2_Ela319_2.fastq.gz
2_EupAx10439_1.fastq.gz
2_EupAx10439_2.fastq.gz
2_EupTT12454_1.fastq.gz
2_EupTT12454_2.fastq.gz

要对对应于 1_EupS0510_1.fastq.gz 和 1_EupS0510_2.fastq.gz 的配对读取运行 trimomatic,可以使用以下命令:

java -jar /local/software/trimmomatic/0.32/trimmomatic-0.32.jar PE -phred33 1_SiMM0510_1.fastq.gz 1_SiMM0510_2.fastq.gz  paired.output_1_SiMM0510_1.fastq.gz unpaired.output_1_SiMM0510_1.fastq.gz paired.output_1_SiMM0510_2.fastq.gz unpaired.output_1_SiMM0510_2.fastq.gz  ILLUMINACLIP:TruSeqAdapters.fst:2:30:10

这只是遵循trimmomatic提供的框架

java -jar <path to trimmomatic.jar> PE [-phred33 | -phred64] <input 1> <input 2> <paired output 1> <unpaired output 1> <paired output 2> <unpaired output 2> <step 1>

我不知道如何创建一个循环函数,该函数可以对给定目录中的所有文件重复该命令,同时保持配对末端读取之间的链接。

如果有人有任何建议,那将会非常有帮助

最佳答案

#!/bin/bash
for f1 in *_1.fastq.gz
do
f2=${f1%%_1.fastq.gz}"_2.fastq.gz"
java -jar ...stuff... $f1 $f2 ...moreFiles...
done

您也可以去掉 _1.fastq.gz 并将其用作其他所有内容的基本名称,就像我上面对 f2 所做的那样。

关于for-loop - 在多个 Illumina 双端读取文件上使用 trimomatic,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29306245/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com