Using the example code below, I find that I can 
 use getopt handily to pass all sorts of 
 variables to my script, as long as a 
 value passed is not a 0 (zero) 

How to I use getopt::long and be able to 
 pass the number zero as a value? 
 Code, and  behavior follows 
                          
                          Thanks! Mike D
.....................
MYTEST
#!/usr/local/bin/perl
use Getopt::Long;
GetOptions("o"=>\$oflag,
            "string=s"=>\$stringmandatory,
            "int=i"=> \$mandatoryinteger,
print "oflag $oflag\n" if $oflag;
print "stringmandatory $stringmandatory\n" if
$stringmandatory;
print "mandatoryinteger $mandatoryinteger\n" if
$mandatoryinteger;

print "Unprocessed by Getopt::Long\n" if $ARGV[0];
foreach (@ARGV) {
  print "$_\n";
}
................................
# ./MYTEST -stringmandatory=1
Unknown option: stringmandatory
# ./MYTEST --stringmandatory=1
Unknown option: stringmandatory
# ./MYTEST --string
Option string requires an argument
# ./MYTEST --string
Option string requires an argument
# ./MYTEST --string=abc
stringmandatory abc
# ./MYTEST --string=1
stringmandatory 1
# ./MYTEST --string=0
# ./MYTEST --int=0
# ./MYTEST --int=1
mandatoryinteger 1


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
<http://learn.perl.org/> <http://learn.perl.org/first-response>


Reply via email to