[Bio] / FigKernelScripts / svr_subsystem_genomes.pl Repository:
ViewVC logotype

View of /FigKernelScripts/svr_subsystem_genomes.pl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (download) (as text) (annotate)
Thu Aug 19 20:07:29 2010 UTC (9 years, 6 months ago) by parrello
Branch: MAIN
CVS Tags: mgrast_dev_08112011, mgrast_dev_08022011, rast_rel_2014_0912, myrast_rel40, mgrast_dev_05262011, mgrast_dev_04082011, rast_rel_2010_0928, mgrast_version_3_2, mgrast_dev_12152011, mgrast_dev_06072011, rast_rel_2014_0729, mgrast_dev_02212011, rast_rel_2010_1206, mgrast_release_3_0, mgrast_dev_03252011, rast_rel_2011_0119, mgrast_release_3_0_4, mgrast_release_3_0_2, mgrast_release_3_0_3, mgrast_release_3_0_1, mgrast_dev_03312011, mgrast_release_3_1_2, mgrast_release_3_1_1, mgrast_release_3_1_0, mgrast_dev_04132011, mgrast_dev_04012011, rast_rel_2010_0827, myrast_33, rast_rel_2011_0928, mgrast_dev_04052011, mgrast_dev_02222011, mgrast_dev_10262011, HEAD
Discrimination functions support scripts.

#!/usr/bin/perl -w
use strict;

use Getopt::Long;
use SAPserver;
use ScriptThing;

#
#	This is a SAS Component.
#

=head1 svr_subsystem_genomes

    svr_subsystem_genomes "subsystem ID" >sub_data.tbl

Output the genomes of a subsystem.

This script takes as input a subsystem name on the command line and produces a
tab-delimited file of all the genomes that use the subsystem and their
variant codes. Each line of the file will contain the genome ID first and then
the variant code. The output will be produced on the standard output.

Note that because the subsystem name likely contains spaces, it will need to be
enclosed in quotes on the command-line.

=head2 Command-Line Options

=over 4

=item url

The URL for the Sapling server, if it is to be different from the default.

=item all

If specified, all genomes associated with the subsystem will be included in the output.
Normally, only genomes that completely implement the subsystem will be listed.

=back

=cut

# Parse the command-line options.
my $url = '';
my $all;
my $opted =  GetOptions('url=s' => \$url, all => \$all);
my $subID = $ARGV[0];
if (! $opted || ! $subID) {
    print "usage: svr_subsystem_genomes [--url=http://...] [--all] \"subsystem name\" >output\n";
} else {
    # Get the server object.
    my $sapServer = SAPserver->new(url => $url);
    # Get the roles.
    my $subHash = $sapServer->subsystem_genomes(-ids => $subID, -all => $all);
    # Loop through them, producing output.
    my $genomeHash = $subHash->{$subID};
    if (! $genomeHash) {
        print STDERR "Could not find \"$subID\".\n";
    } else {
        for my $genome (sort { $a <=> $b } keys %$genomeHash) {
            print "$genome\t$genomeHash->{$genome}\n";
        }
    }
}


MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3