(bash) afficher du texte en couleur

Résolu
LezardMoo Messages postés 554 Date d'inscription   Statut Membre Dernière intervention   -  
 Aris Mango -
Bonjour tout le monde!!

je viens de créer un petit fichier.sh pour ma copine qui est sous ubuntu pour lui éviter le terminal.
le bash fonctionne très bien avec un petit message, maintenant je veux lui mettre le message en couleur, comment faire?

j'ai trouver un site qui me donne les codes couleur

Code couleur bash

* [01;01m : Brillant
* [01;05m : Clignote
* [01;07m : Fond Gris
* [01;31m : Rouge
* [01;32m : Vert
* [01;33m : Jaune
* [01;34m : Bleu
* [01;35m : Rose
* [01;36m : Vert Clair
* [01;41m : Fond Rouge
* [01;42m : Fond Vert
* [01;43m : Fond Orange
* [01;44m : Fond Bleu
* [01;45m : Fond Rose

Ecrire en couleur dans bash

echo -e '\033[41;33;1m TEXTE \033[m'
echo -e '\033[Couleur de fond];[Couleur du texte];1m TEXTE \033[m'

mais je ne sais pas les utiliser, quand je colle lexemple dans un fichier.sh ca ne fonctionne pas.

quelqu'un peut m'aider?

Merci d'avance a tous :)


A voir également:

5 réponses

zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
Salut,

Il faut que tu définisses des variables (soit en début de ton script, soit dans un fichier texte que tu sourceras depuis ton script) comme suit :

noir='\e[0;30m'
gris='\e[1;30m'
rougefonce='\e[0;31m'
rose='\e[1;31m'
vertfonce='\e[0;32m'
vertclair='\e[1;32m'
orange='\e[0;33m'
jaune='\e[1;33m'
bleufonce='\e[0;34m'
bleuclair='\e[1;34m'
violetfonce='\e[0;35m'
violetclair='\e[1;35m'
cyanfonce='\e[0;36m'
cyanclair='\e[1;36m'
grisclair='\e[0;37m'
blanc='\e[1;37m'

neutre='\e[0;m'


Et ensuite dans ton script tu les utilises comme ça :

echo -e "${rougefonce}Bonjour${neutre} ${jaune}les gens${neutre}"

N'oublies pas le "-e" pour la commande "echo" sans quoi les caractères d'échappement ne seront pas interprétés ;-\
;-))
28
Aris Mango
 
Merci, ce tuto a été d'une grande pour moi.
0