Můžete to udělat několika způsoby.
Jedním ze způsobů je použití tput
:
tput setab 4
nastaví barvu pozadí na modrou. Chcete-li nastavit barvu popředí, použijte tput setaf
.
Dalším způsobem je použití raw ANSI escape, zde je dobrá dokumentace:https://misc.flogisoft.com/bash/tip_colors_and_formatting
Příkaz setterm
lze použít:
setterm -background blue
nebo
setterm -ba blue
To používá standardní řídicí sekvence ECMA-48 a ve skutečnosti bude fungovat s mnoha (ale ne všemi) emulátory terminálu. (Na rozdíl od manuálu pro tuto možnost ve skutečnosti nepoužívá terminfo.) ECMA-48 obsahuje pojem výchozí barva pro pozadí i popředí, které lze změnit pomocí default
:
setterm --background default
Chcete-li změnit výchozí barvu, přidejte --store
volba (která vysílá řídicí sekvenci, která však funguje pouze s vestavěným emulátorem terminálu v jádře Linux):
setterm --background red --store
Viz man setterm
a setterm --help
pro více podrobností.
S xterm
-jako terminálové emulátory můžete použít:
xtermcontrol --bg blue
(blue
nebo jakákoliv specifikace barev podporovaná XParseColor(3x)
).
To ve skutečnosti odešle \33]11;blue\7
sekvence, takže totéž můžete udělat s:
printf '\33]11;%s\a' blue
Podrobnosti viz Příkazy operačního systému v dokumentu XTerm Control Sequences.