Как я могу изменить цвета fbterm, используя escape-последовательности?

Из fbterm(1) мы можем прочитать:

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

   ESC [ 1 ; n }                   set foreground color to n (0 - 255)
   ESC [ 2 ; n }                   set background color to n (0 - 255)
   ESC [ 3 ; n ; r ; g ; b }       set color n to (r, g, b) , n, r, g, b all in (0 - 255)

Как можно написать эти escape-последовательности командой echo -ne?

1 ответ

Вы можете использовать, например,

echo -ne "\E[2;32} "

который должен напечатать синий пробел. (32 - 32-й цвет в 8-битной таблице цветов по умолчанию, которая кажется синим.)

(Конечно, вы также можете использовать \x1b или же \033 вместо \E представлять побег персонажа.)

Для просмотра всех 255 цветов вы можете использовать for i in {0..255}; do echo -ne "\E[2;$i} "; done; tput sgr0; echo или же for i in {0..255}; do echo -ne "\E[2;$i}$i "; done; tput sgr0; echo который также включает в себя номер цвета.

Пример:

Другие вопросы по тегам