Unconfigured Ad

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • zorph
    Member
    • May 2010
    • 40

    #1

    running samtools in shell script

    hi
    I am trying to run this shell script
    Code:
    for a in {seq 1 22}
    samtools view -h file.bam | awk '$3=="chr$a" || /^@/' | samtools view -S - -b -o Chr$a.bam
    done
    when I do it on the command line it works like a charm, but when i try to throw it in a shell it doesn't give any output. Any ideas?
  • dpryan
    Devon Ryan
    • Jul 2011
    • 3478

    #2
    You should specify whether you're using bash, tcsh, or something else. I recall that for bash your syntax is wrong. Also, I imagine you should escape the $3 since that could otherwise cause some issues.

    Comment

    • Alex Renwick
      Member
      • Jul 2011
      • 44

      #3
      I don't have any help for why your script didn't run, but I can tell you that
      samtools can do what you want by itself.

      Code:
      for a in {1..22}; do 
        samtools view -b file.bam chr$a -o Chr$a.bam
      done
      Or, better yet, pipe the result of that "samtools view file region" command to the next step of the analysis instead of creating a bunch of new bam files.

      Comment

      • zorph
        Member
        • May 2010
        • 40

        #4
        HTML Code:
        You should specify whether you're using bash, tcsh, or something else. I recall that for bash your syntax is wrong. Also, I imagine you should escape the $3 since that could otherwise cause some issues.
        i am using bash. The entire command is below:
        Code:
        for a in {1..22}
        do
              samtools view -h AD3.sorted.bam | awk '$3=="chr$a" || /^@/' | samtools view -S - -b -o chr$a.bam
        done
        Last edited by zorph; 03-02-2012, 06:35 AM.

        Comment

        • Alex Renwick
          Member
          • Jul 2011
          • 44

          #5
          For me, the awk command doesn't work even from the command line. The single quotes prevent bash from expanding "chr$a" to (e.g.) "chr1". Awk is looking for the third column to literally match "chr$a".

          I did this to get the awk command to work:

          Code:
          awk -v a=$a '$3==sprintf("chr%s",a) || /^@/ '

          Comment

          Latest Articles

          Collapse

          • kinpict.com
            Reply to 16S/ITS Profiling vs. Shotgun Metagenomics: What Changes in Your Workflow?
            by kinpict.com
            The part about this topic feels surprisingly grounded, and the details on the page is the bit that made me slow down. I’d keep <a href="https://kinpict.com/">ai family photo generator</a> bookmarked for later.
            Today, 06:37 PM
          • SEQadmin2
            16S/ITS Profiling vs. Shotgun Metagenomics: What Changes in Your Workflow?
            by SEQadmin2





            NGS has revolutionized clinical microbiology by offering new ways to identify and surveil pathogens without prior knowledge of the target. One popular approach is 16S rRNA and ITS amplicon sequencing, which targets specific microbial markers. But studies are increasingly incorporating shotgun metagenomics, a technique that sequences all DNA from a sample without targeting specific microbial markers. This approach allows more detailed taxonomic classification,...
            10-30-2026, 06:46 AM

          ad_right_rmr

          Collapse

          News

          Collapse

          Topics Statistics Last Post
          Started by SEQadmin2, 11-12-2026, 07:59 AM
          0 responses
          27 views
          0 reactions
          Last Post SEQadmin2  
          Started by SEQadmin2, 11-05-2026, 09:25 AM
          0 responses
          35 views
          0 reactions
          Last Post SEQadmin2  
          Started by SEQadmin2, 11-03-2026, 11:54 AM
          2 responses
          56 views
          0 reactions
          Last Post kinpict.com  
          Started by SEQadmin2, 10-28-2026, 09:57 AM
          0 responses
          175 views
          0 reactions
          Last Post SEQadmin2  
          Working...