Есть ли эквивалент ls -v
в Mac OS X, который будет выполнять сортировку номеров версий?
В Mac OS X ls -v
НЕ выполняет сортировку номеров версий, но, похоже, Finder.
По умолчанию ls
в OS X нет возможности сортировки версий. Это особенность GNU ls
, которая поставляется с большинством Linux, но не поставляется с OS X. Вы можете установить GNU с ls
помощью пакета GNU coreutils .
Самый простой способ получить его на Mac - это установить менеджер пакетов, такой как Homebrew или MacPorts, и установить через него coreutils.
Так, например, установите Homebrew:
/usr/bin/ruby -e "$(curl -fsSL https://raw.github.com/gist/323731)"
Подождите немного, прочитайте инструкцию по установке. Затем установите coreutils:
brew install coreutils
Это добавит все GNU coreutils с g
префиксом, так что, например, вы сможете использовать gls
вместо ls
, который теперь предлагает сортировку версий.
Чтобы переопределить ls
поведение по умолчанию (и поведение других встроенных), вы можете добавить эту строку в ваш ~/.bash_profile
:
source /usr/local/Cellar/coreutils/8.12/aliases
Обратите внимание, что это может повлиять на другие программы, которые зависят от версии BSD. Если вы просто хотите ls
использовать псевдоним , используйте следующее:
alias ls="$brew_prefix/bin/gls"
http://www.islamadel.com/en/notes/6-computer/37-sort-version-number-mac
скрипт bash для правильной сортировки номеров версий на Mac-терминале