Я пишу сценарий bash. Я хотел бы напечатать цветную строку на терминале с помощью команды echo
и изменить цвет строки в зависимости от цвета фона терминала.Изменить цвет шрифта в команде echo на основе цвета фона терминала
Я сейчас просто печатаю строку в белом виде так: echo -e "$(tput setaf 7)my string here"
.
Есть ли способ распечатать строку в другом цвете, если цвет фона терминала также белый? Я бы предпочел не устанавливать цвет фона сам, чтобы убедиться, что моя строка видна.
Заранее благодарен!
Есть ли причина не форсировать цвет фона для текста? –
Не особенно привлекательный. Это, безусловно, возможность, и единственная причина, по которой я не хочу этого делать, - это эстетические соображения. Опять же, это сценарий bash, поэтому, если мне придётся прибегать к тому, что это не конец света :) –
Это зависит от того, какой терминал вы используете. Это сообщение может помочь http://unix.stackexchange.com/questions/1755/change-the-ps1-color-based-on-the-background-color. –