(bash) afficher du texte en couleur

Résolu/Fermé
LezardMoo Messages postés 554 Date d'inscription mercredi 5 janvier 2011 Statut Membre Dernière intervention 21 janvier 2015 - 31 mars 2011 à 11:48
 Aris Mango - 8 juin 2017 à 16:18
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 dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
31 mars 2011 à 12:16
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 ;-\
;-))
27
Merci, ce tuto a été d'une grande pour moi.
0