Как узнать неизвестные параметры с помощью Getopt::Long ?
Я попробовал '‹>', но это не сработало, как ожидалось. Рассмотрим:
use Modern::Perl;
use Getopt::Long;
my $help='';
GetOptions ('help' => \$help,'<>' => \&usage);
usage() if $help;
usage() if @ARGV != 1;
my $fn=pop;
say "FileName: $fn";
sub usage {
say "Unknown option: @_" if ( @_ );
say "Usage: $0 <filename>";
say " $0 --help";
say "";
exit
}
Я хотел бы напечатать Unknown option
только в том случае, если есть нераспознанный параметр (в данном случае что-то другое, чем --help
). Но теперь он думает, что имя файла является непризнанным вариантом.
Unknown option
для таких вещей, как--foo
или-foo
, но рассматриватьfoo
как имя файла? - person ThisSuitIsBlackNot   schedule 25.03.2014