Farbu môžem zmeniť prostredníctvom predvolieb, ale ako môžem zmeniť farbu pozadia a farbu textu terminálu prostredníctvom príkazového riadku?
Informácie uvedené na tejto stránke, okrem stĺpca s náhľadom:
Sekvencie sú zložené zo znaku Escape (často reprezentovaného "^[
" alebo "<Esc>
"), za ktorým nasledujú niektoré ďalšie znaky: "^[FCm
" (kde FC
je jedno z čísel v zozname s odrážkami nižšie).
V bash
môže byť Esc kód jedným z nasledujúcich:
\e
\033
(v osmičkovej sústave)\x1B
(hexadecimálne)Poznámka 1:_ Sekvencia "\e[0m
" odstráni všetky atribúty (formátovanie a farby). Môže byť dobrým nápadom pridať ju na koniec každého farebného textu.
Poznámka 2: Farby popredia a pozadia sa môžu líšiť v závislosti od konfigurácie terminálu'a nie všetky farby sú podporované.
0
: Vynulujte/odstráňte všetky atribúty modifikátora, popredia a pozadia: echo -e "\e[0mNormal Text"
1
: Bold/Bright: echo -e "Normal \e[1mBold"
2
: Dim: echo -e "Normal \e[2mDim"
4
: Podčiarknuté: echo -e "Normálne \e[4mPodčiarknuté"
5
: Blink (nefunguje vo väčšine terminálov okrem XTermu): echo -e "Normal \e[5mBlink"
7
: Reverse/Invert: echo -e "Normal \e[7minverted"
8
: Skryté (užitočné pre citlivé informácie): echo -e "Normal \e[8mSkrytý vstup"
21
: Obnoviť/odstrániť tučné/jasné písmo: echo -e "Normal \e[1mBold \e[21mNormal"
22
: Obnoviť/odstrániť stmievanie: echo -e "Normal \e[2mDim \e[22mNormal"
24
: Obnoviť/odstrániť podčiarknutie: echo -e "Normálne \e[4mPodčiarknuté \e[24mNormálne"
25
: Reset/Remove blink: Normálne \e[5mBliká \e[25mNormálne":
echo -e "Normálne \e[5mBliká \e[25mNormálne"`27
: Reset/Remove reverse/invert: echo -e "Normal \e[7minverted \e[27mNormal"
28
: Obnoviť/odstrániť skryté: echo -e "Normálne \e[8mSkryté \e[28mNormálne"
39
: Predvolené (zvyčajne zelené, biele alebo svetlosivé): echo -e "Default \e[39mDefault"
30
: Čierna: echo -e "Default \e[30mBlack"
(najlepšie v kombinácii s farbou pozadia: echo -e "Default \e[30;107mBlack on white"
)31
: Červená (nepoužívajte so zeleným pozadím)32
: Zelená33
: Žltá34
: Modrá35
: 35
: purpurová/fialová36
: 37
: 37
: svetlosivá90
: 90
: tmavošedá91
: 91
: svetločervená92
: 92
: 92
: svetlozelená 92
: 92
: svetlozelená93
: 93
: svetložltá 93
: svetložltá 93
: svetložltá94
: 94
: svetlomodrá95
: svetlá purpurová/ružová96
: Svetlá azúrová97
: Biela49
: Predvolená farba pozadia (zvyčajne čierna alebo modrá)40
: Čierna41
: Červená42
: zelená43
: Žltá44
: Modrá45
: purpurová/fialová46
: 47
: (nepoužívajte s bielym popredím)100
: Tmavosivá (nepoužívajte s čiernym popredím)101
: Svetločervená farba102
: svetlo zelená (nepoužívajte s bielym popredím)103
: (nepoužívajte s bielym popredím)104
: Svetlomodrá (nepoužívajte so svetložltým popredím)105
: Svetlá purpurová/ružová (nepoužívajte so svetlým popredím)106
: Svetlo azúrová (nepoužívajte s bielym popredím)107
: Biela (nepoužívajte so svetlým popredím)Ak chcete nastaviť farby popredia aj pozadia naraz, použite tvar echo -e "\e[S;FG;BGm"
. Napríklad: echo -e "\e[1;97;41m"
(tučné biele popredie na červenom pozadí)
Možnosti 256 farieb nájdete na zdrojovej stránke.
Ak je určené na náhodnú zmenu farieb:
Môžete použiť príkaz setterm:
setterm -term linux -back <background_colour> -fore <text_color> -clear
z farieb, ktoré si môžete vybrať (predné aj zadné):
black|blue|green|cyan|red|magenta|yellow|white|default
pre viac možností:
setterm -help
V 14.04 som nenašiel možnosť použiť dconf
na nastavenie farieb alebo terminál. Môžete však použiť gconftool
Najprv musíte získať názov svojho profilu:
gconftool-2 --get /apps/gnome-terminal/global/profile_list
Potom nastavte farby textu vášho profilu:
gconftool-2 --set "/apps/gnome-terminal/profiles/<profile_name>/foreground_color" --type string "#FFFFFF"
napríklad nastaviť farbu textu na bielu
To isté platí pre farbu pozadia:
gconftool-2 --set "/apps/gnome-terminal/profiles/<profile_name>/background_color" --type string "#000000"
napríklad nastaviť farbu pozadia na čiernu
Alternatívne môžete na nastavenie názvu farby (farieb) jednoducho použiť bielu
alebo zelenú
z tej istej palety ako príkaz setterm, napr:
gconftool-2 --set "/apps/gnome-terminal/profiles/<profile_name>/background_color" --type string black
Rôzne farebné kódy, ktoré sa používajú na získanie farebného výstupu, možno použiť aj na získanie farebných pozadí:
40 black
41 red
42 green
43 yellow
44 blue
45 magenta
46 cyan
47 white
Preto nasledujúci príkaz zmení moje pozadie na červené:
$ echo -e '\e[0;41m'
V závislosti od shellu, emulátora terminálu atď. nemusíte príkaz -e
potrebovať.