Использование GNU coreutils на iterm2 отключает LSCOLORS

Я использую iterm2 на Mac OS Catalina, однако я предпочитаю все утилиты GNU, а не FreeBSD. В частности, cpкоманде FreeBSD не хватает -tвозможность указать цель, которую я люблю использовать при конвейерной обработке find | xargs cp -t <dest>.

Поэтому я использовал brew для установки основных утилит GNU, как описано в этом посте: https://apple.stackexchange.com/questions/69223/how-to-replace-mac-os-x-utilities-with-gnu-core- утилиты

Итак, теперь у меня есть GNU-версии общих инструментов оболочки, теперь я использую /usr/local/opt/coreutils/libexec/gnubin/ls. Недостатком является то, что мои цвета теперь исчезли. Смотри ниже:

env и выходные данные команды

Очевидно, я могу обойти это, назвав мою команду псевдонимом /bin/lsно мне интересно, есть ли лучший способ. Как я могу получить GNU lsраспознавать мои настройки среды для цветов?

2 ответа

У меня была такая же проблема.

Похоже на все GNUlsнужно было--color=auto

Так что этот псевдоним в моем.zshrcработал -

alias ls='ls -G --color=auto'

Я предполагаю, что то же самое должно работать в.bashrc(не испытано).

Вам нужно использовать dircolors для изменения вывода coreutils. По этой ссылке есть подробная информация о том, как его использовать. https://www.gnu.org/software/coreutils/manual/html_node/dircolors-invocation.html

Другие вопросы по тегам