Я новичок в OS X, только что получил Mac после работы с Ubuntu Linux в течение некоторого времени. Среди многих вещей, которые я пытаюсь понять, является отсутствие цветов в моем терминальном окне - как те, которые показаны (в Linux), когда вы запускаете статус "ls -la" или "git"... я просто не могу понять, как их активировать в реальной оболочке.
Цвета колонок OS X
Ответ 1
Я знаю, этот поток старый, но проблема не в этом.
Вот решение, которое я нашел, чтобы включить глобальное цвета терминалов.
Отредактируйте .bash_profile
(начиная с OS X 10.8) - или (для 10.7 и ранее): .profile
или .bashrc
или /etc/profile
(в зависимости от доступности) - в своем домашнем каталоге и добавьте следующий код:
export CLICOLOR=1
export LSCOLORS=GxFxCxDxBxegedabagaced
CLICOLOR=1
просто позволяет раскрасить ваш терминал.
LSCOLORS=...
указывает, как окрасить определенные элементы.
После редактирования .bash_profile
запустите терминал и принудительно выполните изменения:
source ~/.bash_profile
Затем перейдите к Terminal > Preferences
, перейдите на вкладку Profiles
, а затем подтеку Text
и проверьте Display ANSI Colors
.
Проверено на Сьерра (май 2017 года).
Ответ 2
Синтаксис на основе Linux можно использовать в одном из сценариев запуска. Просто протестируйте это в окне OS X Mountain Lion.
например. в ~/.bash_profile
export TERM="xterm-color"
export PS1='\[\e[0;33m\]\u\[\e[0m\]@\[\e[0;32m\]\h\[\e[0m\]:\[\e[0;34m\]\w\[\e[0m\]\$ '
Это дает вам красивое приглашение. Чтобы добавить цветной вывод ls
, вы можете добавить alias ls="ls -G"
.
Чтобы проверить, просто запустите source ~/.bash_profile
, чтобы обновить текущий терминал.
Боковое примечание о цветах:
Цветам предшествует escape-последовательность \e
и определяется значением цвета, состоящим из [style;color+m]
и завернутым в escape-последовательность []
.
например.
- red =
\[\e[0;31m\]
- жирный красный (стиль 1) =
\[\e[1;31m\]
- clear coloring =
\[\e[0m\]
Я всегда добавляю слегка модифицированную цветовую схему в корневом .bash_profile, чтобы сделать имя пользователя красным, поэтому я всегда вижу отчетливо, если я зарегистрирован как пользователь root (рекомендуется избегать ошибок, если у меня открыто много окон терминала).
В /root/.bash_profile
:
PS1='\[\e[0;31m\]\u\[\e[0m\]@\[\e[0;32m\]\h\[\e[0m\]:\[\e[0;34m\]\w\[\e[0m\]\$ '
Для всех моих учетных записей SSH я обязательно поставлю имя хоста красным цветом, чтобы отличить ли я локальный или удаленный терминал. Просто отредактируйте файл .bash_profile
в домашнем каталоге на сервере.
Ответ 3
Методы MartinVonMartinsgrün и 4Levels отлично зарекомендовали себя на Mac OS X Mountain Lion.Мне нужно было обновить файл ~/.profile.
Однако я не мог оставить этот вопрос, не рекомендуя мое любимое приложение, iTerm 2.
iTerm 2 позволяет загружать глобальные цветовые схемы из файла. Действительно легко экспериментировать и попробовать кучу цветовых схем.
Вот скриншот окна iTerm 2 и цветовых предпочтений.
Как только я добавил следующее в файл ~/.profile, iTerm 2 смог переопределить цвета.
export CLICOLOR=1
export LSCOLORS=GxFxCxDxBxegedabagaced
export PS1='\[\033[01;32m\]\[email protected]\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
Вот отличный репозиторий с хорошими пресетами:
Схемы цвета iTerm2 на Github by mbadolato
Бонус: выберите "Показать/скрыть iTerm2 с помощью общедоступной горячей клавиши" и привяжите ключ с помощью BetterTouchTool для мгновенного скрытия/отображения терминала с жестом мыши.
Ответ 4
Если вы хотите, чтобы ваш цвет был раскрашен, вам необходимо отредактировать файл ~/.bash_profile и добавить следующую строку (если она еще не написана):
source .bashrc
Затем вы редактируете или создаете файл ~/.bashrc и записываете псевдоним команды ls:
alias ls="ls -G"
Теперь вам нужно набрать source .bashrc
в терминале, если он уже запущен, или просто открыть новый терминал.
Если вам нужно больше параметров в ls
juste, прочитайте руководство (man ls
). Параметры не совсем то же самое, что и в системе GNU/Linux.
Ответ 5
Проверьте, что дает $TERM: my - это xterm-color, а ls -alG - цветной вывод.
Ответ 6
Если вы используете tcsh, отредактируйте файл ~/.cshrc
, чтобы включить строки:
setenv CLICOLOR 1
setenv LSCOLORS dxfxcxdxbxegedabagacad
Где, как говорит Мартин, LSCOLORS указывает цветовую схему, которую вы хотите использовать.
Чтобы создать LSCOLORS, который вы хотите использовать, ознакомьтесь с этим сайтом
Ответ 7
Когда я работал в Mac OS X в лаборатории, мне удалось получить цвета терминалов с помощью терминала (а не X11), а затем отредактировать профиль (из строки меню Mac). Интерфейс немного нечетен в цветах, но вы должны установить измененную тему по умолчанию.
Дальнейшие настройки выполняются путем редактирования .bashrc
.