Это все зависит от реализации программы или, более конкретно, от того, как она анализирует параметры. OS X не использует ту же реализацию ls
- она использует ее версии BSD, в то время как Ubuntu (и все Linux) используют версию GNU coreutils .
Его поведение нельзя изменить с помощью параметра, но вы можете установить GNU coreutils с помощью Homebrew:
brew install coreutils
Таким образом, вы можете сделать то же самое в OS X. Обратите внимание, что при установке по умолчанию coreutils все утилиты GNU будут иметь префикс g
. Таким образом, вы будете использовать gls
вместо ls
Вы можете изменить это поведение, добавив их в свой путь. Чтобы сделать это, добавьте это в ваш ~/.bash_profile
:
export PATH="/usr/local/opt/coreutils/libexec/gnubin:$PATH"
При этом все сказанное - и поскольку все зависит от реализации программы - нельзя ожидать, что это сработает везде. Некоторые программы строго определяют, где появляются параметры, а другие - нет. Это не то, что сама ОС обеспечивает.
Чтобы быстро добавить другую опцию, вы также можете нажать ↑, Ctrl A, Option →. Это приведет вас к слову после названия самой команды, где вы можете добавить опцию, которую вы забыли.
Если он не работает и печатает некоторые странные символы, когда вы нажимаете Option →, убедитесь, что эти настройки клавиатуры включены в настройках Terminal.app в разделе « Настройки» Клавиатура: