Gestion Couleurs bash

Usage

 affiche  -green "[OK]";
 affiche -n -blue "Saisir la taille du boney: "; <=M
#!/bin/sh
#options pour la fonction affichage
isOption()
{
    param=$1
    r=${param%%-*}
    if [ "$r" ]; then
        return -1
    else
        return 0
    fi
}
 
#fonction affiche
affiche()
{
    couleur="0m"
    endl=1
    nopt=0
    until [ -z "$1" ]; do
        if [ $nopt != 1 ] &&  isOption "$1"  ; then
            case $1 in
                # Autres options
                -n)    endl=0 ;;  # Pas de retour a la ligne final
                -nopt) nopt=1 ;;
                # Les couleurs
                -white)   couleur="1;37m" ;; 
                -lgray)   couleur="37m"   ;;  
                -gray)    couleur="1;30m" ;;  
                -black)   couleur="30m"   ;;  
                -red)     couleur="31m"   ;;  
                -lred)    couleur="1;31m" ;;  
                -green)   couleur="32m"   ;;  
                -lgreen)  couleur="1;32m" ;;  
                -brown)   couleur="33m"   ;;  
                -yellow)  couleur="1;33m" ;;  
                -blue)    couleur="34m"   ;;  
                -lblue)   couleur="1;34m" ;;  
                -purple)  couleur="35m"   ;;  
                -pink)    couleur="1;35m" ;;  
                -cyan)    couleur="36m"   ;;  
                -lcyan)   couleur="1;36m" ;;  
                *)        couleur="0m" ;;
            esac
        else
            echo -en "\033[$couleur$1\033[0m"
            nopt=0
        fi
        shift
    done
    if test $endl == 1; then
        echo
    fi
    return 0
}