Я абсолютно новичок в Perl, и я пытаюсь выяснить проблему с разбором аргументов скрипта Perl-скрипта.
У меня есть следующий сценарий Perl с именем sample-perl.pl:
use strict;
use warnings;
use 5.010;
use Getopt::Long qw(GetOptions);
my $source_address;
my $dest_address;
GetOptions('from=s' => \$source_address,
'to=s' => \$dest_address) or die "Usage: $0 --from NAME --to NAME\n";
if ($source_address) {
say $source_address;
}
if ($dest_address) {
say $dest_address;
}
И если я использую команду типа (где я забыл ввести второй вариант):
perl sample-perl.pl --from nyc lon
Output will be: nyc
Как я могу обеспечить, чтобы, если в конце есть дополнительная строка, она обнаруживалась, и вместо этого отображалась ошибка?
Решение:
добавление этого поможет моему делу, по крайней мере:
if(@ARGV){
//throw error
}
scalar @ARGV
? Если@ARGV > 0
есть (не опциональные) аргументы, не полученныеGetOptions()
в командной строке - person Håkon Hægland   schedule 06.04.2017