in reply to GetOptions option with value and no space

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' ...

Remember: Ne dederis in spiritu molere illegitimi!

Replies are listed 'Best First'.
Re^2: GetOptions option with value and no space
by kopolov (Acolyte) on Jul 13, 2015 at 07:24 UTC

    Thank you !!! I've never noticed the bundling. This solved it