The sam_filter command processes an input file in
SAM format. Alignments are validated and converted
to human-readable and/or BLAST 6 format.
Records for unmapped query sequences are discarded unless
the -output_no_hits option is specified.
If the SAM records contain MD tags, or if the original
search database is specified using the -db option, then the alignments in the
records are validated for consistency with the target sequences. This can catch
bugs in the CIGAR string or MD tag, which are surprisingly common in popular
software that supports SAM.
Human-readable alignments can be written to a file
specified by the -alnout option. This requires that MD tags are present in the
SAM records or that the -db option is specified.
Alignments in BLAST 6 format
can be written to a file specified by the -blast6out option.
E-values are calculated for the output files, which
requires that the database size is known. If a database file is given, the size
of the database is used to calculate E-values. Otherwise, the
ka_dbsize option can be used to specify the
database size in letters.
usearch -sam_filter hits.sam -db
genome.fa -alnout hits.aln