我的想法根本不适用于 for 循环,因此将不胜感激任何帮助。
背景:我正在尝试分析一些 RNAseq 数据,并且需要编写一个 for 循环来通过 STAR 读取我所有的双端 fastq 文件。
这是我现在拥有的代码:
#! /bin/bash
#PBS -l walltime=24:00:00
#PBS -l nodes=1:ppn=12
#PBS -l mem=48
# ENVIRONMENT
module load gcc/6.2.0
module load STAR/2.6.1d
prj=/gpfs/data/elf-lab/RNA_Seq/RNA_trial/sab_sandbox/
# INPUTS
sample=SE-QS-19-FC01_S*
staridx=${prj}/reference/hg38_gencode28_STAR
fq1=${prj}/data/${sample}.R1_001.fastq
fq2=${prj}/data/${sample}.R2_001.fastq
rgline="ID:${sample} PU:${sample} SM:${sample} PL:ILLUMINA LB:${sample}"
# OUTPUTS
outprefix=${prj}/alignment/${sample}.
# COMMAND
STAR \
--runThreadN 12 \
--genomeDir $staridx \
--readFilesIn $fq1 $fq2 \
--outSAMtype BAM Unsorted \
--outSAMunmapped Within \
--outFileNamePrefix $outprefix \
--outSAMattrRGline $rgline \
--outSAMattributes NH HI AS nM NM \
--quantMode GeneCounts
这是我的文件的样子:
SE-QS-19-FC01_S33_R1_001.fastq.gz
SE-QS-19-FC01_S33_R2_001.fastq.gz
SE-QS-20-FC01_S34_R1_001.fastq.gz
SE-QS-20-FC01_S34_R2_001.fastq.gz
我想编写一个 for 循环,以便 fq1 和 fq2 将成为每次读取的每一对,但我不确定将 for 循环放置在哪里,以便可以在 STAR 命令中使用 fq1 和 fq2。先感谢您。