For what you want you need a couple of Getopt::Long options.
[05:53][nick:~/monks]$ cat 1134359.pl #! perl -w use strict; use Getopt::Long; Getopt::Long::Configure( "bundling", "ignorecase_always" ); my $myOpt=0; GetOptions('S=i'=> \$myOpt); print"S: $myOpt\n"; __END__ [05:53][nick:~/monks]$ perl 1134359.pl -S 6 S: 6 [05:53][nick:~/monks]$ perl 1134359.pl -s 6 S: 6 [05:53][nick:~/monks]$ perl 1134359.pl -S6 S: 6 [05:53][nick:~/monks]$ perl 1134359.pl -s6 S: 6
The docs have much more to say on bundling options. Like what if you have an option -foo as well as -f and -o, the latter of which takes a required value when the others don't. What happens if the user does script.pl -foo?
Maybe take note of the following line from the docs: "It goes without saying that bundling can be quite confusing." :-)
[05:53][nick:~/monks]$ perl 1134359.pl -zois6nks Unknown option: z Unknown option: o Unknown option: i Unknown option: n Unknown option: k Option s requires an argument S: 6
Yep, still '6' ...
In reply to Re: GetOptions option with value and no space
by 1nickt
in thread GetOptions option with value and no space
by kopolov
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |