gp_qs - quick DNA / RNA sequence searching


gp_qs [-n [value]] [-m|-p] [-q] [-v] [-d] [-h] sequence [inputfile]

gp_qs -i [-n [value]] [-m|-p] [-q] [-v] [-d] [-h] inputfile


-n <value>
allow degenerate 5' and 3' ends of the alignment found. For example, gp_qs -n 2 ATCGATCG will also find CGAT. The value parameter tells how many bases at respective ends can differ from the sequence string.

-p, -m
search only plus / only minus strang (this options cannot be used together).

Prints the version information.

Prints lots of debugging information.

Shows usage information.

file to proces; if not given, will use standard input

file to write the data to; if not given, will use standard output


gp_qs interface differs from most of the GP packages. To make the every day usage simpler, sequence to be retrieved can be directly put into the command line, and is only read from standard input if the option -i is used. You cannot directly source the search sequences from an input file; however this restriction can be easily circumvented by typing something like cat some_file | gp_qs -i search_file.

Without the -i option, sequence string is mandatory. With the -i option, the inputfile containing the sequence(s) in which we are looking for our search sequence is mandatory.

Note that the sequences can have wildcards, so you can use, for example, NNNNNNN as the search string.


  • Look for the sequence "TAATAT" in file orfs.fasta.

    gp_qs TAATAT orfs.fasta


    cat orfs.fasta | gp_qs TAATAT

  • search for a sequence from the file promoter.seq, in the file large_database.fasta:

    cat promoter.seq | gp_qs -i large.database.fasta


    Genpak(1) gp_acc(1) gp_cusage(1) gp_digest(1) gp_dimer(1) gp_findorf(1) gp_gc(1) gp_getseq(1) gp_map(1) gp_matrix(1) gp_mkmtx(1) gp_pattern(1) gp_primer(1) gp_randseq(1) gp_seq2prot(1) gp_slen(1) gp_tm(1) gp_trimer(1)


    All Genpak programs complain in situations you would also complain, like when they cannot find a sequence you gave them or the sequence is not valid.

    The Genpak programs do not write over existing files. I have found this feature very useful :-)


    I'm sure there are plenty left, so please mail me if you find them. I tried to clean up every bug I could find.


    January Weiner III <>