This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Converting Sam To Bam

Hi,

I have set of sam files and I would like to convert them into bam files with the following script. But it didn't create bam files? What I have made wrong?

for file in `ls ~/wgs/sam`; 
do 
   ~/bin/samtools-0.1.18/samtools view -bS ~/wgs/sam/$file \
   > ~/wgs/bam/$FILE.bam; 
done

Thanks

bam sam

Actually, I had a typo in my script. Here is the right one. Sorry about that.

for file in `ls ~/wgs/sam`
do
  ~/bin/samtools-0.1.18/samtools view -bS ~/wgs/sam/$file > ~/wgs/bam/$file.bam
done

You use $file to define the SAM file, yet $FILE for the BAM. s/$FILE/$file/ and you should be good.

Çould you comment on whether any files are created at all? If yes, what type of files are they?

As a result, I had bam files for each sam files.

And that's what you wanted, right

yes, Andreas, problem solved.

2 answers

Haluk, you should use the option -o FILE output file name [stdout] instead of redirecting the stdout to the bam file.

that doesn't affect whether it's BAM output or not.

Not sure what you did wrong, but I use samtools view -bT reference.fa test.sam > test.bam and it works pretty well

Log in to answer this question.