Вместо того, чтобы взламывать и анализировать вывод ls что никогда не было хорошей идеей, вы можете просто установить GNU Coreutils, который предоставляет вам версии GNU ls , date , echo , head and tail и многие другие, которые предлагают гораздо больше, чем аналоги BSD.
Самый простой способ сделать это - установить Homebrew, а затем запустить brew install coreutils . Теперь GNU coreutils будет доступен с префиксом g , и вы можете запустить:
gls -l --group-directories-first
Или, вы можете даже псевдоним, который в вашем .zshrc:
alias ls='gls --group-directories-first'