것은, Getopt :: 긴 익명 서브 루틴 : 나는 --version
또는 --help
와 스크립트를 호출하는 경우나는 다음과 같은 코드를 작성했습니다
my $version = sub {
print "$PROGNAME $VERSION - $AUTHOR\n";
exit 0;
};
my $usage = sub {
print "Usage: proll <options>\n";
print "Available options:\n";
print " -h, --help Print this help and exit.\n";
print " --version Print version.\n";
print " XdY Launch X dice with Y faces.\n";
exit 0;
};
my $ret = GetOptions ("version" => \$version,
"h|help" => \$usage);
그러나 또한이 서브 루틴을 호출하지 않습니다. 내가 어디서 잘못한거야?
다음과 같이 내가 코드를 변경하는 경우, 항상 명령 줄 매개 변수없이 또한 첫 번째 서브 루틴을 호출 :
my $ret = GetOptions ("version" => &$version,
"h|help" => &$usage);
도 참조 http://perldoc.perl.org/Pod/Usage.html – toolic