[bcn-pm] Getopt::Long i funcions per una mateixa opció

Arnau Bria listsarnau a gmail.com
dll feb 6 08:16:14 PST 2012


On Mon, 6 Feb 2012 16:53:40 +0100
Alex Muntada wrote:

> + Arnau Bria <listsarnau a gmail.com>:
> 
> > Per tant he acabant fent un cutre "case" dintre del sub:
> >
> > GetOptions ('list=s' =>  sub { for ($opt{$_[0]}{$_[1]}) {
> >                                /postinstall/ and do
> > {list_postinstall(); last; }; /distro/        and do
> > {list_distros(); last;}; }
> >                        });
> > Que si funciona.
> 
> Pots indicar-nos com utilitzes l'opció --list des de l'intèrpret
> d'ordres i com queda %opt abans de la crida a GetOptions? Jo no tinc
> tan clar que funcioni com cal...
i no funciona.... tenia la crida a les funcions i no la referència a
elles.

>        postinstall     => list_postinstall(),

al final m'ha quedat algo com:

GetOptions (
        'postintalls|P' => sub { print "\nValid Postinstalls\n" ; print
"------------------\n\n"; &list_postinstall(); print "\n"; exit 0},
'distros|D'     => sub { print "\nValid Distributions\n"; print
"-------------------\n\n"; &list_distros(); print "\n"; exit 0 },
'vlans|V'       => sub { print "\Valid Vlans\n";  print
"---------------\n\n"; print Dumper $vlans ; exit 0 } , 'discs|d'
=> sub { print "\Valid Discs\n";  print "---------------\n\n"; print
Dumper $discs ; exit 0 } , 'partitions|p'  => sub { print "\Valid
Partitions\n";  print "---------------\n\n"; print Dumper $partitions ;
exit 0 } , );

i ho crido com:

kickgen --partitions

el --list ha quedat fora :-(

> Salut!
gràcies!
Arnau


Més informació sobre la llista de correu Barcelona-pm