У меня есть следующий код для сортировки номеров версий:
chomp(my @versions = <>);
my @sorted_versions = sort {
version->parse( $a ) cmp version->parse( $b )
} @versions;
print "$_\n" for @sorted_versions;
Если я передам следующий файл:
cat version_file
15.8
15.8.1
Вывод:
15.8.1
15.8
Почему? Это должно было быть:
15.8
15.8.1
Я проверил, что cmp
возвращает 1 при запуске скрипта