Les codes de couleurs en Bash


Couleur Bash
L'environnement de shell Bash se base sur une multitude de codes pour afficher certaines couleurs. Comme il est impossible de toutes les connaître, voici un script qui permet de les afficher sous la forme d'un tableau. Cela vous permettra ensuite d'embellir un peu vos lignes de commande ou vos scripts.

Color Bash

Pour utiliser ce script, ouvrez un terminal et lancez les commandes suivantes :

wget www.tux-planet.fr/public/dev/shell/color-bash.sh
chmod +x color-bash.sh
./color-bash.sh

Un exemple d'utilisation où l'on remarquera l'ajout de \033 devant chaque code de couleurs :

echo -e "\033[31m ROUGE \033[0m"


5 Commentaires pour "Les codes de couleurs en Bash"

Flux des commentaires de cet article Ajouter un commentaire
  •  

    Pour ceux que ça intéresserait, il y a également
    [4;XXm : souligné
    [7;XXm : fond
    [9;XXm : barré

    J'ai modifié le script en conséquence. Bon, les 4, 7 et 9 ne sont pas parmi les plus utilisés mais au moins j'en ai note^^
    http://img369.imageshack.us/img369/8971/scriptcouleur.png

    RépondreRépondre
    Gardouille , le 7 avril 2010 à 14:17
  •  

    Je peux faire mon relou, je peux, je peux ? :D

    En fait ces couleurs ne sont pas spécifiques à bash, elles marchent avec d'autres shells, par contre ton script marche bien avec bash, mais pas avec zsh ou ash.
    Pour ceux qui utilisent zsh, quelques ajustements:

    wget http://www.tux-planet.fr/public/shell/color-bash.sh
    cat color-bash.sh | sed -e 's/bash/zsh/g' -e 's/((/\ &/g' -e 's/==/=/g' > color-zsh.sh
    chmod +x color-zsh.sh
    ./color-zsh.sh

    Merci pour le script en tout cas !

    RépondreRépondre
    renwickd , le 7 avril 2010 à 23:29
  •  

    @renwickd : Heuuu, pourtant j'utilises ZSH et j'obtiens exactement la même chose avant ton sed ou après.
    Par ailleurs, ZSH, c'est quand même THE shell ;-)

    RépondreRépondre
    Barikad , le 13 avril 2010 à 12:00
  •  

    @Barikad : En fait le "for((" me donne un parse error, il faut un espace, et le "=" est à préférer au "==" qui n'est pas compatible bourne (l'instruction for ((i=0...)) non plus cela dit).
    Pour les scripts je préfère faire du bourne-compatible (en vérifiant avec ash), mais pour l'utilisation au quotidien zsh est tellement confortable :)

    RépondreRépondre
    renwickd , le 13 avril 2010 à 17:39
  •  

    Bonjour,

    @Gardouille:
    ^[[9m n'est pas très répandue, en fait elle ne semble être supportée que par VTE (GNOME Terminal, Nautilus Terminal, XFCE4 Terminal, Guake,... mais pas par konsole, rxvt, xvt, aterm, Eterm, Xterm, Linux TTY,...)

    dans la liste des codes peu supportés on a aussi ^[[3m (italic, supporté que par rxvt) ou ^[[5 (blink)

    J'ai fait récemment un comparatif des compatibilités entre les différents terminaux:
    http://misc.flogisoft.com/bash/tip_colors_and_formatting#terminals_compatibility

    [oui je sais je répond à l'article très longtemps après sa parution x)]

    RépondreRépondre
    FLOZz , le 13 juin 2011 à 12:45
 

Ajouter un commentaire

actualité android apache apple astuce astuces bash bilboblog blog boot chrome clavier commande commandes conky date debian Desktop développement elementary exploit faille fedora firefox flash gimp gnome google graphique Graphisme hack hacking Hardware humour intel internet iphone jailbreak Jeux Kde kernel libre Linux log logiciels Logiciels Libres lucid lynx maemo mail maquette metasploit microsoft mobile mockup monitoring mozilla multi-touch musique mysql n900 nautilus nokia noyau openoffice open source password photos php Planet publicité red hat redhat rpm réseau screenshot script serveur serveurs shell sql ssh statistiques sysadmin system Sécurité thème tux-planet tv twitter ubuntu unity vidéo vidéos vlc voyage wallpaper windows wordpress yum