Picard-tools
Introduction
Started as a companion package to GATK, so that GATK could concentrate on its core functions, but has blossomed beyond that to be quite substnatial in its own right, and is sometimes better than samtools.
Its toolbox takes the form of subcommand which are fed to the chief picard-tools program. As it is java, this will be a jar file.
Note that Java 1.8 is a prerequisite for picard-tools.
Usage
picard-tools follows conventions set by GATK. This means that it is a bit awkward clumsy for one-liner command-lines and sits better in a script.
Typical script
Here we use the MergeSamFiles tool.
#!/bin/bash A=( $* ) NA=${#A[@]} INPS="" for i in ${A[@]}; do INPS="$INPS I=$i" done INPS="$INPS O=allmerged.bam" java -jar ~/swmake/jars/picard.jar MergeSamFiles SORT_ORDER=coordinate${INPS}
This to note: picard-tools does n't have the usual -x <optionvalue> option switches, but rather:
- these is no dash before the option switch
- the option takes an equals sign with no spaces.
- the option switches are in capitals and can also be strings made up of words separated by underscores.