hmmfetch - Man Page

retrieve profiles from a file


hmmfetch [options] hmmfile key
 (retrieve HMM named key)

hmmfetch -f [options] hmmfile keyfile
 (retrieve all HMMs listed in keyfile)

hmmfetch --index [options] hmmfile
 (index hmmfile for fetching)


Quickly retrieves one or more profile HMMs from an hmmfile (a large Pfam database, for example).

For maximum speed, the hmmfile should be indexed first, using hmmfetch --index. The index is a binary file named hmmfile.ssi. However, this is optional, and retrieval will still work from unindexed files, albeit much more slowly.

The default mode is to retrieve a single profile by name or accession, called the key. For example:

    % hmmfetch Pfam-A.hmm Caudal_act
    % hmmfetch Pfam-A.hmm PF00045

With the -f option, a keyfile containing a list of one or more keys is read instead.  The first whitespace-delimited field on each non-blank non-comment line of the keyfile is used as a key, and any remaining data on the line is ignored. This allows a variety of whitespace delimited datafiles to be used as a keyfile.

When using -f and a keyfile, if hmmfile has been indexed, the keys are retrieved in the order they occur in the keyfile, but if hmmfile isn't indexed, keys are retrieved in the order they occur in the hmmfile. This is a side effect of an implementation that allows multiple keys to be retrieved even if the hmmfile is a nonrewindable stream, like a standard input pipe.

In normal use (without --index or -f options), hmmfile may be '-' (dash), which means reading input from stdin rather than a file.   With the --index option, hmmfile may not be '-'; it does not make sense to index a standard input stream. With the -f option,   either hmmfile or keyfile (but not both) may be '-'. It is often particularly useful to read keyfile from standard input, because this allows use to use arbitrary command line invocations to create a list of HMM names or accessions, then fetch them all to a new file, just with one command.

By default, fetched HMMs are printed to standard output in HMMER3 format.



Help; print a brief reminder of command line usage and all available options.


The second commandline argument is a keyfile instead of a single key. The first field on each line of the keyfile is used as a retrieval key (an HMM name or accession).  Blank lines and comment lines (that start with a # character) are ignored.

-o <f>

Output HMM(s) to file <f> instead of to standard output.


Output HMM(s) to individual file(s) named key instead of standard output.


Instead of retrieving one or more profiles from hmmfile, index the hmmfile for future retrievals. This creates a hmmfile.ssi binary index file.

See Also

See hmmer(1) for a master man page with a list of all the individual man pages for programs in the HMMER package.

For complete documentation, see the user guide that came with your HMMER distribution (Userguide.pdf); or see the HMMER web page (



Nov 2020 HMMER 3.3.2 HMMER Manual