У меня есть проверка проверки, когда я передаю параметры командной строки в программу perl. Я передаю два года, первый переданный аргумент должен быть меньше второго переданного аргумента, и оба аргумента должны быть только цифрами, а также они должны быть ровно 4 .
#Sunny>perl check.pl 2007 2008
Это хорошо
#Sunny>perl check.pl 2008 2007
Это плохо
#Sunny>perl check.pl 200 2007
Это плохо
Я написал код для этого, но не смог понять, почему он не работает.
#!usr/bin/perl
#check.pl
if ($#ARGV < 0) { }
else
{
$fiscyear1 = $ARGV[0];
$fiscyear2 = $ARGV[1];
}
if (($fiscyear1 !~ m/\d{4}/) and ($fiscyear2 !~ m/\d{4}/) and ($fiscyear1 < $fiscyear2))
{ print "Bad parameters\n"; }
else
{ print "good parameters\n"; }