У меня есть массив номеров версий, которые я прочитал из вывода команды терминала, к сожалению, некоторые из них недопустимы (5.2.5_076_06-beta) для использования с version :: parse, у меня есть вывести «Недопустимый формат версии (требуется версия) в строке 8 get_version.pl». это соответствует строке, содержащей version-> parse ($ test); и весь сценарий заканчивается. Как мне обойти это?
use version;
my $cmd = "ls -l /nfs/install/ | awk '{print \$9}'";
my @vers = `$cmd`;
foreach my $test ( @vers ) {
try {
version->parse($test);
}
catch
{
my $index = 0;
$index++ until $vers[$index] eq $test;
print $vers[$index];
splice(@vers, $index, 1);
}
}
my @sorted_vers = sort { version->parse( $a ) <=> version->parse( $b ) } @vers;
foreach my $version (@sorted_vers)
{
print $version;
}