.Nick пишет:
А вы обратили внимание, что командой ls (например) файлы нормально сортируются по версиям (у меня так по крайней мере), не смотря на то что ls вообще не знает, что это пакеты не говоря о том, что у них еще есть версии ... Это наводит на мысль, что версии можно просто сравнивать как строки (посимвольно) и не обращать внимания на всякие там тире и т.п. ... Или я не прав?
Нет, Вы не правы. Команда ls содержит специальный алгоритм для правильной сортировки по имени файла, с учетом версий.
`-v' `--sort=version' Sort by version name and number, lowest first. It behaves like a default sort, except that each sequence of decimal digits is treated numerically as an index/version number. (*Note More details about version sort::.) И кстати если по звездочке перейти там есть пример: > ls -1 > ls -1v foo.zml-1.gz foo.zml-1.gz foo.zml-100.gz foo.zml-2.gz foo.zml-12.gz foo.zml-6.gz foo.zml-13.gz foo.zml-12.gz foo.zml-2.gz foo.zml-13.gz foo.zml-25.gz foo.zml-25.gz foo.zml-6.gz foo.zml-100.gz Да поможет Вам info coreutils ls Всего наилучшего. Дамир