Unconfigured Ad

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts
  • vishal.rossi
    Member
    • Apr 2013
    • 25

    Using case in BAtchscript

    Hi,
    As I am new to batch and using the case statement for the 1st time, can anyone help me in understanding what is missing in the code below.

    Do I need to define "command" before using it in for condition?
    Thanks in advance


    #!bin/bash -l
    ## PBS Directives
    #PBS -q default
    #PBS -l nodes=1pn=4
    #PBS -l mem=25GB
    #PBS -l walltime=10:00:00
    #PBS -A ccg-ngs
    #PBS -m abe
    #PBS -M ......
    #PBS -o /scratch/tmp/v_stdout/${PBS_JOBNAME}.o${PBS_JOBID}
    #PBS -e /scratch/tmp/v_stderr/${PBS_JOBNAME}.e${PBS_JOBID}

    inp=$input
    echo inp:$inp

    for command in 1 2 3 4
    do
    case command in
    1)
    /path/SVDetect_r0.8/bin/SVDetect linking -conf $inp;;
    2)
    /path/SVDetect_r0.8/bin/SVDetect filtering -conf $inp;;
    3)
    /path/SVDetect_r0.8/bin/SVDetect links2circos -conf $inp;;
    4)
    /path/SVDetect_r0.8/bin/SVDetect links2SV -conf $inp;;
    esac
    done
  • vishal.rossi
    Member
    • Apr 2013
    • 25

    #2
    If someone can tell how to execute it with if statements, it will also be fine

    Comment

    • mastal
      Senior Member
      • Mar 2009
      • 666

      #3
      Using case in BAtchscript

      Originally posted by vishal.rossi View Post

      Do I need to define "command" before using it in for condition?
      No, that is fine as it is. But I would beware of using words that
      could be actual commands or key words as variable names.

      Originally posted by vishal.rossi View Post
      #!bin/bash -l
      You should have
      Code:
      #!/bin/bash -l
      I'm not sure why you are using the for loop or the case statement.
      The way you have written the code, it seems like you just want to
      execute 4 commands, one after the other, in which case you just need
      to list the commands in the order you want them to be executed.
      Code:
      /path/SVDetect_r0.8/bin/SVDetect linking -conf $inp;;
      
      /path/SVDetect_r0.8/bin/SVDetect filtering -conf $inp;;
      
      /path/SVDetect_r0.8/bin/SVDetect links2circos -conf $inp;;
      
      /path/SVDetect_r0.8/bin/SVDetect links2SV -conf $inp;;

      Comment

      • vishal.rossi
        Member
        • Apr 2013
        • 25

        #4
        Thanks for the reply.
        I want to execute these 4 commands.
        So what you want to say is I simply use this code :


        inp=$input
        echo inp:$inp
        /path/SVDetect_r0.8/bin/SVDetect linking -conf $inp;;

        /path/SVDetect_r0.8/bin/SVDetect filtering -conf $inp;;

        /path/SVDetect_r0.8/bin/SVDetect links2circos -conf $inp;;

        /path/SVDetect_r0.8/bin/SVDetect links2SV -conf $inp;;
        Last edited by vishal.rossi; 04-27-2013, 12:02 PM. Reason: More info

        Comment

        • mastal
          Senior Member
          • Mar 2009
          • 666

          #5
          Using case in BAtchscript

          Originally posted by vishal.rossi View Post
          T
          So what you want to say is I simply use this code :
          Yes.

          I'm not sure where your scipt is going to get the value of $input from though.

          Comment

          • vishal.rossi
            Member
            • Apr 2013
            • 25

            #6
            i will submit a job like this:

            qsub -v input=/path/abc.conf /path/svdetect.sh


            I tried what you suggested and it throws this error now.
            bin/bash: bad interpreter: No such file or directory

            Comment

            • sklages
              Senior Member
              • May 2008
              • 628

              #7
              Originally posted by vishal.rossi View Post
              bin/bash: bad interpreter: No such file or directory
              You surely forgot the '/'. It is /bin/bash

              Comment

              Latest Articles

              Collapse

              • GATTACAT
                Reply to Nine Things a Sample Prep Scientist Thinks About Before Sequencing
                by GATTACAT
                Love this - good data definitely starts from good input, and poor input can only give relatively poor data. I particularly like the mention of Nanodrop/absorbance based methods for quantification. It's such a toss up if you'll get an accurate reading or what amounts to a randomly generated number, and a lot of library/sequencing related issues can be traced back to poor quant.
                07-01-2026, 11:43 AM
              • SEQadmin2
                Nine Things a Sample Prep Scientist Thinks About Before Sequencing
                by SEQadmin2


                I’m not a sequencing expert. I’m a purification scientist who uses NGS to evaluate workflows my group develops. With this perspective, we think about the sample first and the NGS workflow second. The sequencer is an exceptionally honest reporter, but it can only report on what you give it, so whether you get clean, interpretable data from an NGS workflow is largely determined before you begin.

                Here are nine questions we think about, in roughly the order they matter, before...
                06-18-2026, 07:11 AM

              ad_right_rmr

              Collapse

              News

              Collapse

              Topics Statistics Last Post
              Started by SEQadmin2, 07-02-2026, 11:08 AM
              0 responses
              11 views
              0 reactions
              Last Post SEQadmin2  
              Started by SEQadmin2, 06-30-2026, 05:37 AM
              0 responses
              14 views
              0 reactions
              Last Post SEQadmin2  
              Started by SEQadmin2, 06-26-2026, 11:10 AM
              0 responses
              20 views
              0 reactions
              Last Post SEQadmin2  
              Started by SEQadmin2, 06-17-2026, 06:09 AM
              0 responses
              54 views
              0 reactions
              Last Post SEQadmin2  
              Working...