Issues creating loop for BWA job
0
0
Entering edit mode
5.7 years ago
Whirlingdaf ▴ 60

Hi,

I am having issues creating a successful loop for processing ~200 files in the same directory. My BWA script runs successfully when run on individual scripts but I have been unsuccessful in creating a working loop that will process all files, not just one at a time. Below is an example script:

module load BWA/0.7.17-foss-2016b

for FNAME in $FILES 
do
time bwa mem -t 12 -M /Directory/Folder/Reference/Lisp_final /Directory/Folder/$FNAME\.1.fq.gz /Directory/Folder/$FNAME\.2.fq.gz > /Directory/Folder/Lisp/align_output/$FNAME\.sam
let "i+=1";
done

Thank you for any help!

SNP software error alignment • 1.1k views
ADD COMMENT
0
Entering edit mode

There is not enough information here to debug. Where is $FILES coming from and what does it contain? What is let "i+=1" doing?

General comment. You should always use echo in/before your actual command (time bwa etc) until you are sure that the command lines look sane. At that point you can remove echo to run the real jobs.

You could do something like

for file in *r1.fq.gz 
do name=$(basename $file r1.fq.gz) 
echo bwa mem -t 12 -M /Directory/Folder/Reference/Lisp_final  ${name}.r1.fq.gz  ${name}.r2.fq.gz > ${name}.sam
done
ADD REPLY

Login before adding your answer.

Traffic: 2121 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6