Як змінити вихідний колір луни в Linux PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Як змінити вихідний колір Echo в Linux

Вступ

Команда echo команда виводить заданий рядок у стандартна вихідна труба, зазвичай вказуючи на термінал. Хоча стандартний вихідний канал може вказувати на інші інтерфейси – the echo Команда зазвичай використовується для друку та відображення повідомлень у терміналі. За замовчуванням текст відображеного повідомлення успадковує колір іншого тексту в терміналі (який сам по собі можна налаштувати). Однак існує кілька способів змінити колір виведення echo – як для окремих рядків, так і для цілих повідомлень.

У цьому короткому посібнику ми розглянемо, як можна змінити колір виведення echo в системах на базі Linux, використовуючи escape-коди ANSI, tput і як можна зробити цей процес менш багатослівним у сценаріях Bash.

Змініть колір виводу за допомогою ANSI Escape Codes

Найпростіший спосіб змінити колір за допомогою керуючих послідовностей/кодів ANSI. Усі escape-коди ANSI починаються з Escape символ, який може бути представлений у різних форматах – 27 в десятковому, x1B у шістнадцятковій формі, як клавіша керування ^[або 33 у вісімковому форматі. Потім послідовності супроводжуються командою:

33[command

Де відкриває дужку (Контрольна послідовність Introducer) є необов’язковим, але допомагає відокремити команду від символу керування. Коли ви ставите a колірний код як команда, вона змінює колір наступного тексту:

33[0;34

0;34 це, наприклад, код синього кольору. Тільки за допомогою цього ви можете змінити колір тексту echo з:

33[0;34Text

де Text буде пофарбовано в синій колір. В якості альтернативи розгляньте простий сценарій bash для друку “Ласкаво просимо до Франції” в кольорах французького прапора:

#!/bin/bash  
BLUE='33[0;34m'
WHITE= '33[0;37m' 
RED= '33[0;31m'   
echo -e "${Blue}Welcome ${WHITE}to ${RED}France"

The optional -e прапор echo Команда дозволяє використовувати спеціальні символи, наприклад n (новий рядок) і t (табуляція) всередині рядка введення.

Після запуску сценарію:

$ ./colors.sh

Це призводить до:

Як змінити вихідний колір луни в Linux PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Коди ANSI не обмежуються кольором, але також можуть бути застосовані для стилю. Коди 0..9 представляють стилі тексту, а коди 30...37 представляють кольори:

Колір Codes Стилі тексту Codes
Black 30 Простий текст 0
червоний 31 Жирний текст 1
зелений 32 Текст низької інтенсивності 2
Коричневий / помаранчевий 33 Підкреслити текст 4
синій 34 Миготливий текст 5
фіолетовий 35 Невидимий текст 8
Блакитний 36 Закреслений текст 9
Світло Сірий 37

Давайте створимо сценарій bash, щоб дослідити деякі з цих параметрів:

#!/bin/bash
echo -e "33[0;33mSample text"
echo -e "33[1;33mBold text"
echo -e "33[2;33mLow intensity text"
echo -e "33[4;33mUnderline text"
echo -e "33[5;33mBlinking text"
echo -e "33[8;33mInvisible text"
echo -e "33[9;33mStrikethrough text"

Запуск цього сценарію призводить до:

Як змінити вихідний колір луни в Linux PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Ознайомтеся з нашим практичним практичним посібником із вивчення Git з передовими методами, прийнятими в галузі стандартами та включеною шпаргалкою. Припиніть гуглити команди Git і фактично вчитися це!

Так само ви можете змінити колір фону цих текстів за допомогою кодів 40..47:

color Codes
Black 40
червоний 41
зелений 42
Коричневий / помаранчевий 43
синій 44
фіолетовий 45
Блакитний 46
Світло Сірий 47

Зміна фону заданого рядка зводиться до того ж правила, що і при зміні кольору шрифту – сам код змінює поведінку:

#!/bin/bash
BLUE='33[0;44m'
BLACK='33[0;30m'
WHITE='33[0;30;47m'
RED='33[0;41m'
echo -e "${BLUE}Welcome ${WHITE}to ${RED}France"

Примітка: Як правило, ви можете перетворити кольори шрифту на кольори фону, додавши 10. 30 чорний колір шрифту, 40 чорний колір тла.

Змініть вихідний колір за допомогою tput

Альтернативою кодам ANSI є використання tput команда:

$ tput setaf color_code

setf допускає 8 кольорів, при цьому setaf дозволяє використовувати 256 кольорів, тож залежно від команди, яку ви використовуєте, ви можете переходити між ними 0..7 та 0..255 як кольорові коди. обидві команди присвяч 0..7 до тих же колірних кодів, при цьому с setaf, 8..15 це кольори високої інтенсивності, і 16..231 є різними відтінками перших 8 і 232..255 це сірі кольори:

Як змінити вихідний колір луни в Linux PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.
Кредит: Вікіпедія

Нарешті, tput також дозволяє змінювати колір фону, додавати жирний шрифт, зменшувати інтенсивність тощо за допомогою інших команд:

Стилі тексту Команди
Колір переднього плану setaf
Background color сетаб
Ніякого стилю sgv0
Жирний текст сміливий
Текст низької інтенсивності Нд
Підкреслити текст смул
Миготливий текст блимати
Зворотний текст об

Давайте створимо інший сценарій, який використовує tput щоб змінити колір виведення echo:

#!/bin/bash
YELLOW=`tput setaf 3`
echo "${YELLOW}Changing"
WHITE=`tput setaf 7 bold`
echo "${WHITE}Colors"
BLUE=`tput setaf 4 smul`
echo "${BLUE}With tput"
CYAN=`tput setaf 6 blink`
echo "${CYAN}is less"
RED=`tput setab 1 setaf 7`
echo "${RED}verbose!"

Цей сценарій надрукує наступний вихід у терміналі:

Як змінити вихідний колір луни в Linux PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Команда tput забезпечує простий спосіб друку будь-якого кольору за допомогою простого коду кольору. Давайте тепер створимо сценарій, який може друкувати всі коди кольорів, доступні для команди tput:

#!/bin/bash
tput init 
 end = $ (($ (tput colors) - 1)) 
 w = 1 
 for c
  in $ (seq 0 $end) 
  do
eval "$(printf " tput setaf % 3 s " " $c ")" 
      echo - n "$_" 
      [[$c - ge $ ((w * 2))]] 
      offset = 2 || offset = 0 
      [[$ (((c + offset) % (w - offset))) - eq $ (((w - offset) - 1))]] 
      echo 
 done 
 tput init

Він друкуватиме від 0 до 255 кольорів та їх коди:

Як змінити вихідний колір луни в Linux PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Висновок

У цьому короткому посібнику ми розглянули, як можна змінити колір echoВивід у Linux – з використанням керуючих послідовностей ANSI та tput команда

Ми також дослідили, як можна зробити процес менш багатослівним за допомогою змінних Bash, налаштувати фонові кольори та стиль тексту.

Часова мітка:

Більше від Stackabuse