Biostar Beta. Not for public use.
Tool:Shell script to automate trimmomatic for multiple samples
3
Entering edit mode
20 months ago
@Vijay Lakhujani26377

Couple of months back, I had developed this shell script to automate trimmomatic for multiple paired end fastq files. I could see multiple posts on biostars and I believe this is a routine work at many institutions.

Availability:

Hosted on GitHub

Feedback is highly appreciated 💚

  • Reach me on GitHub

    or

  • Post comments here on Biostars


trimmomatic shell bash Tool • 334 views
ADD COMMENTlink
2
Entering edit mode

thanks for sharing. IMHO, you should have a look at solutions like nextflow or snakemake.

ADD REPLYlink
0
Entering edit mode

Hi Pierre Lindenbaum

I completely agree with you on that. I should start learning. Thanks for the suggestion.

ADD REPLYlink
1
Entering edit mode

Thanks for sharing the params.

ADD REPLYlink
0
Entering edit mode

Thanks cpad0112

ADD REPLYlink
1
Entering edit mode
20 months ago
ATpoint 17k
@ATpoint

Suggestion for improvement: Check up front at the beginning of a script that all necessary tools are in PATH and/or defined in variables, e.g.:

## $TRIMMOMATIC could be a path like $HOME/software/trimmomatic.jar
TOOLS=(samtools bedtools bowtie2 $TRIMMOMATIC)

## A simple command that checks if tools can be found, if not names are written to a file <missing_tools.txt>
function PathCheck {

  if [[ $(command -v $1 | wc -l) == 0 ]]; then 
    echo ${1} >> missing_tools.txt
    fi

}; export -f PathCheck

## Check all tools:
for i in $(echo ${TOOLS[*]}); do
  PathCheck $i; done

## If any of the specified tools is missing, throw an error and exit:
if [[ -e missing_tools.txt ]] && [[ $(cat missing_tools.txt | wc -l | xargs) > 0 ]]; then
  echo '[ERROR] Missing tools -- see missing_tools.txt for details' && exit 1
  fi
ADD COMMENTlink
0
Entering edit mode

Thanks for the awesome suggestion ATpoint. That's worth implementing!

ADD REPLYlink

Login before adding your answer.

Similar Posts
Loading Similar Posts
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.3