Tool: Shell script to automate trimmomatic for multiple samples
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
• 7,548 views
•
link
1 answer
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
• 0 views
•
link
Log in to answer this question.
thanks for sharing. IMHO, you should have a look at solutions like nextflow or snakemake.
Hi Pierre Lindenbaum
I completely agree with you on that. I should start learning. Thanks for the suggestion.
Thanks for sharing the params.
Thanks cpad0112