Как я могу изменить цвет этого синего текста в моей командной строке?


11

Я знаю, что этот вопрос задавался несколько раз, но я не нашел ответа на эти другие вопросы.

Вот изображение, чтобы проиллюстрировать мою точку зрения:

введите описание изображения здесь

Вы можете прочитать синюю линию, не щурясь? Нет? И я нет.

Я запускаю сборник заданий в полном подробном режиме, и мне нужно прочитать эти журналы с помощью сборника с более чем 50 заданиями.

Может кто-нибудь объяснить, как я могу изменить эти цвета?

Вопросы, на которые я смотрел, где я не нашел решения:


2
синий фон должен быть виден, хотя в этом случае это не так. Не пытайтесь использовать экранирование оболочки для изменения цвета. Вам нужно настроить blue colorв своем терминале эмулятор на что-то более заметное.
Грохмал

@grochmal спасибо за вклад. Как я могу это сделать? Это LS_Colors или с Tput или .....?
Джозе

Какой эмулятор терминала вы используете?
Дероберт

@derobert Китти
Джозе

1
halyph.blogspot.com/2013/01/custom-puttykitty-color-scheme.html ... похоже, у вас должна быть запись настроек для изменения цветов. (На самом деле, возможно, здесь не по теме, по крайней мере, если редактирование конфигурации KiTTY окажется ответом).
Дероберт

Ответы:


2

Нет, никогда не было возможности читать синий на черном (а жизнь слишком коротка, чтобы возиться с настройками цвета в каждой комбинации терминала или консоли, которую я мог бы использовать), поэтому я отключаю цвета по умолчанию. С xterm, .Xdefaultsзапись:

XTerm*colorMode:false

делает чудеса; в противном случае без средств уничтожения цветов в терминале могут потребоваться хаки для конкретных приложений; быстрый способ - использовать функцию оболочки и направить выход, к catкоторому отсоединяется ansibleот терминала, и может привести к тому, что он не будет спамить цвета:

function ansible-playbook {
    command ansible-playbook "$@" | cat
}

Другим ключевым моментом является возиться с TERM, например, TERM=vt220 ansible-playbook ...(это имеет тенденцию работать на старых системах, но, увы, цветовой спам присутствует TERM=vt220в современных системах, и изменение, TERMне зная, во что вы ввязываетесь, вероятно, плохая идея).

Однако! Из некоторых недоразумений в ansibleисточниках ansible не содержит ошибок и предоставляет ANSIBLE_NOCOLOR=1переменную окружения:

ANSIBLE_NOCOLOR=1 ansible-playbook ...

1
OP не использует xterm, поэтому этот ответ бесполезен.
Томас Дики

1
@ThomasDickey, пожалуйста, объясните подробно, как ANSIBLE_NOCOLOR=1 ansible...это не полезно на консоли.
Три

13

Вы можете указать цвет для использования в ansible (по крайней мере, вы можете это сделать с помощью ansible 2.3.1.0). Откройте ansible.cfg и перейдите в раздел, где написано [colors]. Вы должны увидеть что-то вроде этого

[colors]
#highlight = white
#verbose = blue
verbose = green
#warn = bright purple
#error = red
#debug = dark gray
#deprecate = purple
#skip = cyan
#unreachable = red
#ok = green
#changed = yellow
#diff_add = green
#diff_remove = red
#diff_lines = cyan

Просто раскомментируйте тип текста, который вы хотите изменить, и укажите нужный цвет.


3

Большинство приложений придерживаются 16 цветов (8 темных и 8 светлых), известных как цвета ANSI , потому что это общий знаменатель, поддерживаемый почти всеми терминалами. Стандарт ANSI не определяет точный оттенок, он просто говорит «черный», «синий», «красный» и т. Д. Синий оттенок по умолчанию часто представляет собой чистый синий цвет, который трудно прочитать на черном фоне на мониторе RGB. , но хорошие эмуляторы терминала позволяют настраивать цвета. Добавление немного красного и зеленого в цвет, как правило, достаточно, чтобы сделать его читаемым, но все же отчетливым.

С xterm, PuTTY и другими совместимыми терминалами вы можете настроить цвета из приложения, работающего внутри терминала, с помощью правильной escape-последовательности . Попробуйте запустить это в терминале, прежде чем запускать приложение:

## Set the blue hue (color 4) to CornflowerBlue
printf '\e]4;4;#6495ed\a'

Если вы запускаете bash при открытии терминала, вставьте это в свой .bashrc. Если ANSIBLE приложение открывает терминал самостоятельно, заставьте его распечатать эту управляющую последовательность на терминал.

В качестве альтернативы, многие терминалы позволяют настраивать цвета в их конфигурации, например, через X-ресурсы в Xterm. Проверьте документацию вашего эмулятора терминала.


прямо в моем файле .bashrc
lsh

3

Если вы используете putty в качестве ssh-клиента, вы можете просто изменить его настройки внешнего вида.

Изменить настройки -> Окно -> Цвета. В поле «Выберите цвет для настройки» выберите «ANSI Blue», чтобы изменить цвет.


Добро пожаловать в Unix.stackexchange! Я рекомендую вам взять тур .
Стивен Раух

Спасибо, это решило это для меня!
парсер

1

Официальную документацию о том, как изменить каждый цвет в ansible, можно найти здесь: https://docs.ansible.com/ansible/latest/reference_appendices/config.html.

Если в основном используется темный фон, подробный синий вывод не может быть прочитан.

Я использую для этого в ansible.cfg

[colors]
verbose: bright blue
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.