Mercurial > repos > rliterman > csp2
annotate CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/opt/bbmap-39.01-1/shred.sh @ 69:33d812a61356
planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author | jpayne |
---|---|
date | Tue, 18 Mar 2025 17:55:14 -0400 |
parents | |
children |
rev | line source |
---|---|
jpayne@69 | 1 #!/bin/bash |
jpayne@69 | 2 |
jpayne@69 | 3 usage(){ |
jpayne@69 | 4 echo " |
jpayne@69 | 5 Written by Brian Bushnell |
jpayne@69 | 6 Last modified January 13, 2022 |
jpayne@69 | 7 Description: Shreds sequences into shorter, potentially overlapping sequences. |
jpayne@69 | 8 |
jpayne@69 | 9 Usage: shred.sh in=<file> out=<file> length=<number> minlength=<number> overlap=<number> |
jpayne@69 | 10 |
jpayne@69 | 11 in=<file> Input sequences. |
jpayne@69 | 12 out=<file> Destination of output shreds. |
jpayne@69 | 13 length=500 Desired length of shreds. |
jpayne@69 | 14 minlength=1 Shortest allowed shred. The last shred of each input sequence may be shorter than desired length. |
jpayne@69 | 15 overlap=0 Amount of overlap between successive reads. |
jpayne@69 | 16 reads=-1 If nonnegative, stop after this many input sequences. |
jpayne@69 | 17 equal=f Shred each sequence into subsequences of equal size of at most 'length', instead of a fixed size. |
jpayne@69 | 18 median=0 If nonzero, randomly shred reads to a length with this median. |
jpayne@69 | 19 variance=0 If median is nonzero, shred to lengths of median +-variance. |
jpayne@69 | 20 qfake=30 Quality score, if using fastq output. |
jpayne@69 | 21 |
jpayne@69 | 22 Please contact Brian Bushnell at bbushnell@lbl.gov if you encounter any problems. |
jpayne@69 | 23 " |
jpayne@69 | 24 } |
jpayne@69 | 25 |
jpayne@69 | 26 #This block allows symlinked shellscripts to correctly set classpath. |
jpayne@69 | 27 pushd . > /dev/null |
jpayne@69 | 28 DIR="${BASH_SOURCE[0]}" |
jpayne@69 | 29 while [ -h "$DIR" ]; do |
jpayne@69 | 30 cd "$(dirname "$DIR")" |
jpayne@69 | 31 DIR="$(readlink "$(basename "$DIR")")" |
jpayne@69 | 32 done |
jpayne@69 | 33 cd "$(dirname "$DIR")" |
jpayne@69 | 34 DIR="$(pwd)/" |
jpayne@69 | 35 popd > /dev/null |
jpayne@69 | 36 |
jpayne@69 | 37 #DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )/" |
jpayne@69 | 38 CP="$DIR""current/" |
jpayne@69 | 39 |
jpayne@69 | 40 z="-Xmx1400m" |
jpayne@69 | 41 set=0 |
jpayne@69 | 42 |
jpayne@69 | 43 if [ -z "$1" ] || [[ $1 == -h ]] || [[ $1 == --help ]]; then |
jpayne@69 | 44 usage |
jpayne@69 | 45 exit |
jpayne@69 | 46 fi |
jpayne@69 | 47 |
jpayne@69 | 48 calcXmx () { |
jpayne@69 | 49 source "$DIR""/calcmem.sh" |
jpayne@69 | 50 setEnvironment |
jpayne@69 | 51 parseXmx "$@" |
jpayne@69 | 52 } |
jpayne@69 | 53 calcXmx "$@" |
jpayne@69 | 54 |
jpayne@69 | 55 stats() { |
jpayne@69 | 56 local CMD="java $EA $EOOM $z -cp $CP jgi.Shred $@" |
jpayne@69 | 57 # echo $CMD >&2 |
jpayne@69 | 58 eval $CMD |
jpayne@69 | 59 } |
jpayne@69 | 60 |
jpayne@69 | 61 stats "$@" |