Как мне получить цветной удар?

87

Как я могу заставить bash выглядеть таким образом?

цветная-баш

daniel451
источник
daniel451, почему вы ответили на свой вопрос в те же сроки?
ква
4
@kva Ответы на ваш собственный вопрос во время публикации приветствуются в сети Stack Exchange.
CJ Деннис
Связанный: askubuntu.com/questions/123268/… . Это объясняет, как отдельные части подсказки могут быть окрашены по-разному.
FreezingFire

Ответы:

128

Открыть ~/.bashrcв текстовом редакторе и раскомментировать строку:

#force_color_prompt=yes

быть:

force_color_prompt=yes

сохранить затем выполнить source ~/.bashrc

К кра
источник
Точно не отвечает на вопрос, но мне нравится этот результат лучше (меньше отвлекает).
Джеймс Хиршорн
Я думаю, что это ответ. Почему нет ?
К Кра
Вот как выглядит мой метод после вашего метода: 2016-10-25 16: 12: 15.png Не совсем так, как в вопросе.
Джеймс Хиршорн
@JamesHirschorn force_color включает только цвета, вы всегда можете управлять тем, как будет выглядеть раскраска с помощью переменной PS1, см. Мой пример в одном из моих сценариев github.com/to-kra/dotfiles/blob/master/scripts/…, который также включает состояние git. .. вы можете экспортировать свой собственный PS1 в профиле пользователя, создавать необычные цвета и форматирование по своему вкусу. ТНХ
Для Кра
Является ли force_color_prompt=yesпредполагаемый способ включения цветов? Для меня принуждение звучит как обходной путь.
Яакко
60

Я придумал это решение:

  • открыть ~ / .bashrc в редакторе
  • скопируйте это и добавьте в конец файла .bashrc:

    PS1='\[\033[1;36m\]\u\[\033[1;31m\]@\[\033[1;32m\]\h:\[\033[1;35m\]\w\[\033[1;31m\]\$\[\033[0m\] '
  • сохраните файл и перезапустите bashrc:

    source ~/.bashrc

Для полного списка доступных цветов и дополнительных опций ищите эти ссылки:

daniel451
источник
Вы можете проверить жидкие подсказки. Это действительно информационная небольшая подсказка. google.com/…
Скотт Гудгейм,
Идеальный выбор цвета!
шайба
Онлайн графический интерфейс, генератор Easy Bash PS1
Джим Фред
3

Версия, которая немного более «общая», должна работать в различных средах:
(зависит от terminfo)

Вставьте это в свой $HOME/.bashrc:

function fgtab {
  echo "tput setf/setb - Foreground/Background table"
  for f in {0..7}; do
    for b in {0..7}; do
      echo -en "$(tput setf $f)$(tput setb $b) $f/$b "
    done
    echo -e "$(tput sgr 0)"
  done
}

# The prompt in a somewhat Terminal -type independent manner:
cname="$(tput setf 3)"
csgn="$(tput setf 4)"
chost="$(tput setf 2)"
cw="$(tput setf 6)"
crst="$(tput sgr 0)"
PS1="\[${cname}\]\u\[${csgn}\]@\[${chost}\]\h:\[${cw}\]\w\[${csgn}\]\$\[${crst}\] "

Затем выполните source ~/.bashrc.

После этого fgtabотобразится таблица цветов с цифрами. Эти числа для, tput setf nи tput setb nгде «n» - это число, «f» - «передний план», а «b» - цвет «фон».

tput sgr 0 сбросит цвета переднего плана и фона по умолчанию.

И, как вы можете видеть, изменение цветов, используемых для приглашения, становится действительно простым (просто отредактируйте то же число, $HOME/.bashrcчто и вы).

Добавить $(tput setb n)в системе, $cnameесли вы хотите иметь все строки с фоном п.

Ханну
источник
больше: askubuntu.com/a/396555/289138
Ханну
ibm.com/developerworks/linux/library/l-tip-prompt больше прямой обработки чисел.
Ханну
man 5 terminfoпоказывает, что tputможно использовать, это немного технически, хотя и «прислушайтесь» - но некоторые догадки и тесты могут фактически позволить вам заставить это работать.
Ханну