BOWTIE2(1)
β¨ NAME β¨
bowtie2 β literally just a wrapper for bowtie2-align-*, bestie π
π¦ DESCRIPTION π¦
Okay so. Bowtie 2 version 2.5.5, made by Ben Langmead (langmea@cs.jhu.edu, www.cs.jhu.edu/~langmea). Iconic. Periodt. π
πΈ USAGE πΈ
bowtie2 [options]* -x <bt2-idx> {-1 <m1> -2 <m2> | -U <r> |
--interleaved <i> | -b <bam>} [-S <sam>]
Here's the whole cast of characters, no cap:
<bt2-idx>β the index filename prefix (minus the trailing.X.bt2). β οΈ NOTE: Bowtie 1 and Bowtie 2 indexes are not compatible, so don't even try it, they're not the same girlies.<m1>β files with the #1 mates, paired with whatever's in<m2>. Can be gzip'ed (extension:.gz) or bzip2'ed (extension:.bz2).<m2>β files with the #2 mates, paired with whatever's in<m1>. Also can be gzip'ed (.gz) or bzip2'ed (.bz2).<r>β files with unpaired reads. You guessed it: gzip'ed (.gz) or bzip2'ed (.bz2) is fine. π«Ά<i>β files with interleaved paired-end FASTQ/FASTA reads. Could be gzip'ed (.gz) or bzip2'ed (.bz2), obviously. β¨<bam>β files are unaligned BAM sorted by read name.<sam>β the file for SAM output (default:stdout).
Also,<m1>,<m2>and<r>can be comma-separated lists (no whitespace!! like, zero) and you can specify them many times. E.g.'-U file1.fq,file2.fq -U file3.fq'. π
π OPTIONS π
(defaults are in parentheses, so you always know what you're getting)
π Input
-qβ query input files are FASTQ.fq/.fastq(default)--tab5β query input files are TAB5.tab5--tab6β query input files are TAB6.tab6--qseqβ query input files are in Illumina's qseq format-fβ query input files are (multi-)FASTA.fa/.mfa-rβ query input files are raw one-sequence-per-line-F k:<int>,i:<int>β query input files are continuous FASTA where reads are substrings (k-mers) extracted from the FASTA file and aligned at offsets 1, 1+i, 1+2i ... end of reference-cβ<m1>,<m2>,<r>are sequences themselves, not files-s/--skip <int>β skip the first<int>reads/pairs in the input (none)-u/--upto <int>β stop after first<int>reads/pairs (no limit)-5/--trim5 <int>β trim<int>bases from 5'/left end of reads (0)-3/--trim3 <int>β trim<int>bases from 3'/right end of reads (0)--trim-to [3:|5:]<int>β trim reads exceeding<int>bases from either 3' or 5' end. If the read end is not specified then it defaults to 3 (0)--phred33β qualities are Phred+33 (default)--phred64β qualities are Phred+64--int-qualsβ qualities encoded as space-delimited integers
π Presets
Same as:
For --end-to-end:
--very-fastβ-D 5 -R 1 -N 0 -L 22 -i S,0,2.50--fastβ-D 10 -R 2 -N 0 -L 22 -i S,0,2.50--sensitiveβ-D 15 -R 2 -N 0 -L 22 -i S,1,1.15(default)--very-sensitiveβ-D 20 -R 3 -N 0 -L 20 -i S,1,0.50
For --local:
--very-fast-localβ-D 5 -R 1 -N 0 -L 25 -i S,1,2.00--fast-localβ-D 10 -R 2 -N 0 -L 22 -i S,1,1.75--sensitive-localβ-D 15 -R 2 -N 0 -L 20 -i S,1,0.75(default)--very-sensitive-localβ-D 20 -R 3 -N 0 -L 20 -i S,1,0.50
π Alignment
-N <int>β max # mismatches in seed alignment; can be 0 or 1 (0)-L <int>β length of seed substrings; must be >3, <32 (22)-i <func>β interval between seed substrings w/r/t read len (S,1,1.15)--n-ceil <func>β func for max # non-A/C/G/Ts permitted in aln (L,0,0.15)--dpad <int>β include<int>extra ref chars on sides of DP table (15)--gbar <int>β disallow gaps within<int>nucs of read extremes (4)--ignore-qualsβ treat all quality values as 30 on Phred scale (off)--nofwβ do not align forward (original) version of read (off)--norcβ do not align reverse-complement version of read (off)--no-1mm-upfrontβ do not allow 1 mismatch alignments before attempting to scan for the optimal seeded alignments--end-to-endβ entire read must align; no clipping (on)
OR
--localβ local alignment; ends might be soft clipped (off)
π Scoring
--ma <int>β match bonus (0 for--end-to-end, 2 for--local)--mp <int>β max penalty for mismatch; lower qual = lower penalty (6)--np <int>β penalty for non-A/C/G/Ts in read/ref (1)--rdg <int>,<int>β read gap open, extend penalties (5,3)--rfg <int>,<int>β reference gap open, extend penalties (5,3)--score-min <func>β min acceptable alignment score w/r/t read length (G,20,8 for local, L,-0.6,-0.6 for end-to-end)
π Reporting
- (default) β look for multiple alignments, report best, with MAPQ
OR
-k <int>β report up to<int>alns per read; MAPQ not meaningful
OR
-a/--allβ report all alignments; very slow without-l, MAPQ not meaningful
π₯ Effort
-l/--lowseeds <n>β ignore any low quality seeds with ranges over threshold (0=no cut, if percentage, mili or nano, relative to idx size)-D <int>β give up extending after<int>failed extends in a row (15)-R <int>β for reads w/ repetitive seeds, try<int>sets of seeds (2)-d/--deterministic-seedsβ Consider all seeds in order (no subsampling, best with-a)
π«Ά Paired-end
-I/--minins <int>β minimum fragment length (0)-X/--maxins <int>β maximum fragment length (500)--fr/--rf/--ffβ-1,-2mates align fw/rev, rev/fw, fw/fw (--fr)--no-mixedβ suppress unpaired alignments for paired reads--no-discordantβ suppress discordant alignments for paired reads--dovetailβ concordant when mates extend past each other--no-containβ not concordant when one mate alignment contains other--no-overlapβ not concordant when mates overlap at all
π§ BAM
--align-paired-readsβ Bowtie2 will, by default, attempt to align unpaired BAM reads. Use this option to align paired-end reads instead.--preserve-tagsβ Preserve tags from the original BAM record by appending them to the end of the corresponding SAM output.
β Output
-t/--timeβ print wall-clock time taken by search phases--un <path>β write unpaired reads that didn't align to<path>--al <path>β write unpaired reads that aligned at least once to<path>--un-conc <path>β write pairs that didn't align concordantly to<path>--al-conc <path>β write pairs that aligned concordantly at least once to<path>
Note, bestie: for--un,--al,--un-conc, or--al-conc, add'-gz'to the option name, e.g.--un-gz <path>, to gzip compress output, or add'-bz2'to bzip2 compress output. π
--quietβ print nothing to stderr except serious errors--met-file <path>β send metrics to file at<path>(off)--met-stderrβ send metrics to stderr (off)--met <int>β report internal counters & metrics every<int>secs (1)--no-unalβ suppress SAM records for unaligned reads--no-headβ suppress header lines, i.e. lines starting with@--no-sqβ suppress@SQheader lines--rg-id <text>β set read group id, reflected in@RGline andRG:Z:opt field--rg <text>β add<text>("lab:value") to@RGline of SAM header. Note:@RGline only printed when--rg-idis set.--omit-sec-seqβ put'*'in SEQ and QUAL fields for secondary alignments.--sam-no-qname-truncβ Suppress standard behavior of truncating readname at first whitespace at the expense of generating non-standard SAM.--xeqβ Use'='/'X', instead of'M,'to specify matches/mismatches in SAM record.--soft-clipped-unmapped-tlenβ Exclude soft-clipped bases when reporting TLEN.--sam-append-commentβ Append FASTA/FASTQ comment to SAM record.--sam-opt-config <config>β Use<config>, example'-MD,YP,-AS', to toggle SAM Optional fields.
π¦ Performance
-p/--threads <int>β number of alignment threads to launch (1)--reorderβ force SAM output order to match order of input reads--mmβ use memory-mapped I/O for index; many 'bowtie's can share
πΈ Other
--qc-filterβ filter out reads that are bad according to QSEQ filter--seed <int>β seed for random number generator (0)--non-deterministicβ seed rand. gen. arbitrarily instead of using read attributes--versionβ print version information and quit-h/--helpβ print this usage message
That's the whole thing, and honestly? Ate. π
So this little love letter to your terminal is bowtie2 2.5.5, dated February 2026, and it lives in the BOWTIE2(1) section of your manual. Go forth and align, bestie π«Άβ¨π§¬
π¦ where this page comes from
- ubuntu stonking: bowtie2 2.5.5-1 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms