Je peux changer la couleur par le biais des préférences, mais comment puis-je changer la couleur de fond et la couleur du texte du terminal par le biais de la ligne de commande ?
Informations telles qu'elles se trouvent sur [cette page][1], à l'exclusion de la colonne de prévisualisation :
Les séquences sont composées du caractère Escape (souvent représenté par "^[
" ou "<Esc>
") suivi de certains autres caractères : "^[FCm
" (où FC
est l'un des chiffres de la liste à puces ci-dessous).
En bash
, le code Esc peut être l'un des suivants :
\e
\033
(octal)\x1B
(hexadécimal)Remarque 1:_ La séquence "\e[0m
" ; supprime tous les attributs (formatage et couleurs). Cela peut être une bonne idée de l'ajouter à la fin de chaque texte coloré.
Note 2:_ Les couleurs d'avant-plan et d'arrière-plan peuvent varier en fonction de la configuration du terminal et [toutes les couleurs ne sont pas prises en charge][2].
0
: Réinitialise/supprime tous les attributs de modificateur, de premier plan et d'arrière-plan : `echo -e "\e[0mTexte normal"``1
: Gras/Brillant : echo -e "Normal \e[1mBold"
2
: Dim : echo -e "Normal \e[2mDim"
4
: Souligné : echo -e "Normal \e[4mUnderlined"
5
: Clignotement (ne fonctionne pas dans la plupart des terminaux sauf XTerm) : echo -e "Normal \e[5mBlink"
7
: Inverser/Inverser : echo -e "Normal
e[7minverted"`8
: Caché (utile pour les informations sensibles) : echo -e "Normal \e[8mHidden Input"
21
: Réinitialiser/supprimer le gras/le brillant : echo -e "Normal \e[1mBold \e[21mNormal"
22
: Réinitialiser/Supprimer l'obscurité : echo -e "Normal \e[2mDim \e[22mNormal"
24
: Réinitialiser/Supprimer le soulignement : echo -e "Normal \e[4mSouligné \e[24mNormal"
25
: Réinitialiser/Supprimer le clignotement : echo -e "Normal \e[5mBlink \e[25mNormal"
27
: Reset/Remove reverse/invert : echo -e "Normal \e[7minverted \e[27mNormal"
28
: Reset/Remove hidden : echo -e "Normal \e[8mHidden \e[28mNormal"
39
: Défaut (généralement vert, blanc ou gris clair) : echo -e "Défaut \e[39mDefault"
30
: Noir : echo -e "Default \e[30mBlack"
(à combiner de préférence avec une couleur de fond : echo -e "Default \e[30;107mBlack on white"
)31
: Rouge (ne pas utiliser avec un fond vert)32
: Vert33
: Jaune34
: Bleu35
: Magenta/Pourpre36
: Cyan37
: Gris clair90
: Gris foncé91
: Rouge clair92
: Vert clair93
: Jaune clair94
: Bleu clair95
: Magenta/Pink clair96
: Cyan clair97
: Blanc49
: Couleur de fond par défaut (généralement noir ou bleu)40
: Noir41
: Rouge42
: Vert43
: Jaune44
: Bleu45
: Magenta/Pourpre46
: Cyan47
: Gris clair (ne pas utiliser avec un premier plan blanc)100
: Gris foncé (ne pas utiliser avec un premier plan noir)101
: Rouge clair102
: Vert clair (ne pas utiliser avec un premier plan blanc)103
: Jaune clair (ne pas utiliser avec un premier plan blanc)104
: Bleu clair (ne pas utiliser avec un premier plan jaune clair)105
: Magenta/Pink clair (ne pas utiliser avec un avant-plan clair)106
: Cyan clair (ne pas utiliser avec un premier plan blanc)107
: Blanc (ne pas utiliser avec un premier plan clair)Pour définir à la fois les couleurs d'avant-plan et d'arrière-plan, utilisez la forme echo -e "\e[S;FG;BGm"
. Par exemple : echo -e "\e[1;97;41m"
(avant-plan blanc en gras sur fond rouge)
Pour les options de 256 couleurs, voir la page source.
[1] : http://misc.flogisoft.com/bash/tip_colors_and_formatting [2] : http://misc.flogisoft.com/bash/tip_colors_and_formatting#terminals_compatibility [3] : http://misc.flogisoft.com/bash/tip_colors_and_formatting#colors1
Si l'on veut changer les couleurs de façon fortuite :
Vous pouvez utiliser la commande [setterm][1] :
setterm -term linux -back <background_colour> -fore <text_color> -clear
parmi les couleurs que vous pouvez choisir (avant et arrière-plan) :
black|blue|green|cyan|red|magenta|yellow|white|default
pour plus d'options :
setterm -help
[1] : http://linux.about.com/library/cmd/blcmdl1_setterm.htm
Dans 14.04, je n'ai pas trouvé d'option pour utiliser dconf
pour définir les couleurs ou le terminal. Vous pouvez cependant utiliser gconftool
.
Vous devez d'abord obtenir le nom de votre profil :
gconftool-2 --get /apps/gnome-terminal/global/profile_list
Ensuite, pour définir les couleurs du texte de votre profil :
gconftool-2 --set "/apps/gnome-terminal/profiles/<profile_name>/foreground_color" ; --type string "#FFFFFF" ;
par exemple, pour définir la couleur du texte en blanc
Il en va de même pour la couleur d'arrière-plan :
gconftool-2 --set "/apps/gnome-terminal/profiles/<profile_name>/background_color" ; --type string "#000000" ;
par exemple, pour définir la couleur de fond en noir
Alternativement, pour définir le nom de la ou des couleurs, vous pouvez simplement utiliser white
ou green
, dans la même palette que la commande setterm, par exemple :
gconftool-2 --set "/apps/gnome-terminal/profiles/<profile_name>/background_color" --type string black
Les différents codes de couleur utilisés pour obtenir des sorties colorées peuvent également être utilisés pour obtenir des [fonds colorés][1] :
40 black
41 red
42 green
43 yellow
44 blue
45 magenta
46 cyan
47 white
Par conséquent, la commande suivante rend mon arrière-plan rouge :
$ echo -e '\e[0;41m'
Selon le shell, l'émulateur de terminal, etc., vous n'aurez peut-être pas besoin du -e
.
[1] : http://www.csc.uvic.ca/~sae/seng265/fall04/tips/s265s047-tips/bash-using-colors.html