in reply to Re^2: Getopts::[Std|Long]. How define a option -L1
in thread Getopts::[Std|Long]. How define a option -L1

Ok, I think I understand what you’re looking for a little better now. Use Getopt::Long:

#! perl use strict; use warnings; use Getopt::Long; my $L1 = ''; my $L2 = ''; my $p = ''; GetOptions('L1=s' => \$L1, 'L2=s' => \$L2, p => \$p); print "L1 switch: $L1\n"; print "p switch: $p\n";

as documented in Getopt::Long. Output:

16:39 >perl 698_SoPW.pl --L1 foo -p L1 switch: foo p switch: 1 16:39 >

But note that if there is no L2 switch defined here, --L (or even -l) will be accepted as an abbreviation for L1. From the documentation, it appears that this is a feature, not a bug: see Case and abbreviations.

Hope that helps,

Athanasius <°(((><contra mundum Iustus alius egestas vitae, eros Piratica,

Replies are listed 'Best First'.
Re^4: Getopt::[Std|Long]. How define a option -L1
by Anonymous Monk on Aug 27, 2013 at 07:28 UTC
    Too much typing :)  my %opt; GetOptions( \%opt, qw[ L1=s L2=s p! ]);
      Thanks to all!