Вывод цветом в консоль |
Обновлено: 15.06.2025 - 22:14
У шелла bash есть возможность выводить не только чернобелый текст, но и раскрашивать вывод в разные цвета.
Делается это при помощи Escape-последовательностей.
Пример вывода:
echo -e 'open \E[40;31m\033[1mhttp://linexp.ru\033[0m in your browser'
Здесь вывод части текста будет красным цветом по черному фону.
Разберем эту строку:
-e — разрешаем esc-последовательности
\E[40;31m\033 — после этого выводим красным цветом на черном фоне
\033[0m — возвращаемся в черно-белый режим
Числовые значения цвета в escape-последовательностях
Цвет | Текст | Фон |
---|---|---|
черный | 30 | 40 |
красный | 31 | 41 |
зеленый | 32 | 42 |
желтый | 33 | 43 |
синий | 34 | 44 |
пурпурный | 35 | 45 |
зеленовато-голубой | 36 | 46 |
белый | 37 | 47 |
Так же текст можно делать жирным, подчеркнутым, мерцающим или инвертированным:
echo -e "\033[1mЭто жирный текст.\033[0m"
echo -e "\033[4mЭто подчеркнутый текст.\033[0m"
echo -e "\033[5mЭто мерцающий текст.\033[0m"
echo -e "\033[7mЭто инвертированный текст.\033[0m"
Так же никто не мешает объединять эти свойства. Например:
echo -e "\033[1m\033[5mЭто жирный мерцающий текст\033[0m"
Или даже так:
echo -e "\033[1m\033[5m\E[40;31m\033 Это жирный мерцающий текст красного цвета\033[0m"
Но у этого всего есть, к сожалению, и обратная сторона. Escape-последовательности очень слабо переносимы. Так что если у вас получился красивый, разноцветный и читабельный вывод, далеко не факт, что он таким же и останется у кого-либо другого. Это зависит как от типа терминала, так и от используемого шелла. Но для себя все равно можно раскрашивать вывод скриптов, как вам больше нравится.
------------------------
Восстановление сайтов из Вебархива
Размещение по доскам объявлений России
ТРИО теплый пол отзыв
Заработок на сокращении ссылок
Earnings on reducing links
Код PHP на HTML сайты
Категория: Компьютерные советы
Комментарии |