News | About | Get Frugalware | Packages | Documentation | Discussion Forums | Bug Tracker | Wiki | Community | Development

Color Bash Prompt (Français)

From FrugalWiki

Jump to: navigation, search



Il existe une multitude de possibilités pour personnaliser l'interpréteur de commande Bash (PS1) et le personnaliser pour gagner en efficacité dans l'exercice de la ligne de commande. Vous pouvez rajouter des informations supplémentaires à votre interpréteur de commande ou simplement ajouter de la couleur pour le rendre unique.

Contents

Changements basiques

Les configurations suivantes sont utiles pour différencier l’administrateur (root) de l'utilisateur simple.

  • Éditer votre fichier de configuration Bash:
User terminal 48px.png
$ nano ~/.bashrc
  • Commenter la ligne par défaut de l'interpréteur :
#PS1='[\u@\h \W]\$ '
  • Ajouter la ligne suivante pour que vous utilisiez la couleur verte :
[chiri@zetsubou ~]$ _
PS1='\[\e[1;32m\][\u@\h \W]\$\[\e[0m\] '
  • Éditer le fichier .bashrc de root (ou copier le depuis /etc/skel si le fichier n'est pas présent) :
# nano /root/.bashrc
  • Ajouter la ligne suivante pour que root utilise la couleur rouge :
[root@zetsubou ~]# _
PS1='\[\e[1;31m\][\u@\h \W]\$\[\e[0m\] '

Améliorations

  • Un interpréteur vert et bleu pour les utilisateurs standards :
chiri ~/docs $ echo "sample output text"

sample output text

chiri ~/docs $ _
PS1='\[\e[0;32m\]\u\[\e[m\] \[\e[1;34m\]\w\[\e[m\] \[\e[1;32m\]\$\[\e[m\] \[\e[1;37m\]'

Cela donnera un résultat agréable et coloré avec le texte en blanc.

Les chaînes ci-dessus contiennent des symboles d'accueil ( la coloration commence par : \[\e[color\], et se termine avec \[\e[m\] ) et des informations sur l'utilisateur :

  • \u - Nom de l'utilisateur. L'interpréteur original à aussi \h qui affiche le nom du domaine.
  • \w - La position absolue actuelle. Utilisez \W pour la position relative actuelle.
  • \$ - Le caractère de l’interpréteur ('#' pour root et '$' pour les utilisateurs standards).

La dernière séquence de coloration, "\[\e[1;37m\]", n'est pas fermé, aussi le texte qui suivra (tout ce qui écrit dans le terminal, la sortie des programmes, etc) apparaîtra dans cette couleur. Il est conseillé de changer cette couleur, ou d'effacer le dernier symbole d'accueil pour laisser la sortie actuelle dans la couleur par défaut.

  • Un interpréteur rouge et bleu pour root:
root ~/docs # echo "sample output text"

sample output text

root ~/docs # _
PS1='\[\e[0;31m\]\u\[\e[m\] \[\e[1;34m\]\w\[\e[m\] \[\e[0;31m\]\$ \[\e[m\]\[\e[0;32m\]'

Cela donnera un rendu rouge et un texte vert.

Changements avancés

Statut de la mémoire pour les terminaux 256 couleurs

Cet exemple provient de l'article BASH Power Prompt de AskApache.com . Il est très utile pour ceux qui souhaitent comprendre les terminaux 256 couleurs comme ncurses, termcap et terminfo.

802/1024MB 1.28 1.20 1.13 3/94 18563

[5416:17880 0:70] 05:35:50 Wed Apr 21 [srot@host.sqpt.net:/dev/pts/0 +1] ~

(1:70)$ _
  PROMPT_COMMAND='history -a;echo -en "\033[m\033[38;5;2m"$(( `sed -nu  "s/MemFree:[\t ]\+\([0-9]\+\) kB/\1/p"  /proc/meminfo`/1024))"\033[38;5;22m/"$((`sed -nu "s/MemTotal:[\t  ]\+\([0-9]\+\) kB/\1/Ip" /proc/meminfo`/1024  ))MB"\t\033[m\033[38;5;55m$(< /proc/loadavg)\033[m"'
  PS1='\[\e[m\n\e[1;30m\][$$:$PPID \j:\!\[\e[1;30m\]]\[\e[0;36m\] \T \d  \[\e[1;30m\][\[\e[1;34m\]\u@\H\[\e[1;30m\]:\[\e[0;37m\]${SSH_TTY}  \[\e[0;32m\]+${SHLVL}\[\e[1;30m\]] \[\e[1;37m\]\w\[\e[0;37m\]  \n($SHLVL:\!)\$ '
 


Liste des couleurs pour l'interpréteur

Ajouter ceci à votre fichier Bash pour définir les couleurs pour l'interpréteur et les commandes:

txtblk='\e[0;30m' # Noir - normal
txtred='\e[0;31m' # Rouge
txtgrn='\e[0;32m' # Vert
txtylw='\e[0;33m' # Jaune
txtblu='\e[0;34m' # Bleu
txtpur='\e[0;35m' # Violet
txtcyn='\e[0;36m' # Cyan
txtwht='\e[0;37m' # Blanc
bldblk='\e[1;30m' # Noir - gras
bldred='\e[1;31m' # Rouge
bldgrn='\e[1;32m' # Vert
bldylw='\e[1;33m' # Jaune
bldblu='\e[1;34m' # Bleu
bldpur='\e[1;35m' # Violet
bldcyn='\e[1;36m' # Cyan
bldwht='\e[1;37m' # Blanc
unkblk='\e[4;30m' # noir - souligne
undred='\e[4;31m' # Rouge
undgrn='\e[4;32m' # Vert
undylw='\e[4;33m' # Jaune
undblu='\e[4;34m' # Bleu
undpur='\e[4;35m' # Violet
undcyn='\e[4;36m' # Cyan
undwht='\e[4;37m' # Blanc
bakblk='\e[40m'   # Noir - fond
bakred='\e[41m'   # Rouge
badgrn='\e[42m'   # Vert
bakylw='\e[43m'   # Jaune
bakblu='\e[44m'   # Bleu
bakpur='\e[45m'   # Violet
bakcyn='\e[46m'   # Cyan
bakwht='\e[47m'   # Blanc
txtrst='\e[0m'    # Réinitialisation du texte


Ou si vous préférez avoir le nom des couleurs normales et des effets d'intensités :

# Réinitialisation
Color_Off='\e[0m'       # Réinitialisation du texte

# Couleurs normales
Black='\e[0;30m'        # Noir
Red='\e[0;31m'          # Rouge
Green='\e[0;32m'        # Vert
Yellow='\e[0;33m'       # Jaune
Blue='\e[0;34m'         # Bleu
Purple='\e[0;35m'       # Violet
Cyan='\e[0;36m'         # Cyan
White='\e[0;37m'        # Blanc

# Gras
BBlack='\e[1;30m'       # Noir
BRed='\e[1;31m'         # Rouge
BGreen='\e[1;32m'       # Vert
BYellow='\e[1;33m'      # Jaune
BBlue='\e[1;34m'        # Bleu
BPurple='\e[1;35m'      # Violet
BCyan='\e[1;36m'        # Cyan
BWhite='\e[1;37m'       # Blanc

# Souligne
UBlack='\e[4;30m'       # Noir
URed='\e[4;31m'         # Rouge
UGreen='\e[4;32m'       # Vert
UYellow='\e[4;33m'      # Jaune
UBlue='\e[4;34m'        # Bleu
UPurple='\e[4;35m'      # Violet
UCyan='\e[4;36m'        # Cyan
UWhite='\e[4;37m'       # Blanc

# Fond
On_Black='\e[40m'       # Noir
On_Red='\e[41m'         # Rouge
On_Green='\e[42m'       # Vert
On_Yellow='\e[43m'      # Jaune
On_Blue='\e[44m'        # Bleu
On_Purple='\e[45m'      # Violet
On_Cyan='\e[46m'        # Cyan
On_White='\e[47m'       # Blanc

# Haute intensite
IBlack='\e[0;90m'       # Noir
IRed='\e[0;91m'         # Rouge
IGreen='\e[0;92m'       # Vert
IYellow='\e[0;93m'      # Jaune
IBlue='\e[0;94m'        # Bleu
IPurple='\e[0;95m'      # Violet
ICyan='\e[0;96m'        # Cyan
IWhite='\e[0;97m'       # Blanc

# Haute intensite - gras
BIBlack='\e[1;90m'      # Noir
BIRed='\e[1;91m'        # Rouge
BIGreen='\e[1;92m'      # Vert
BIYellow='\e[1;93m'     # Jaune
BIBlue='\e[1;94m'       # Bleu
BIPurple='\e[1;95m'     # Violet
BICyan='\e[1;96m'       # Cyan
BIWhite='\e[1;97m'      # Blanc

# Haute intensite - fond
On_IBlack='\e[0;100m'   # Noir
On_IRed='\e[0;101m'     # Rouge
On_IGreen='\e[0;102m'   # Vert
On_IYellow='\e[0;103m'  # Jaune
On_IBlue='\e[0;104m'    # Bleu
On_IPurple='\e[10;95m'  # Violet
On_ICyan='\e[0;106m'    # Cyan
On_IWhite='\e[0;107m'   # Blanc

Pour utiliser ces commandes dans votre environnement shell :

$ echo -e "${txtblu}test"
test
$ echo -e "${bldblu}test"
test
$ echo -e "${undblu}test"
test
$ echo -e "${bakblu}test"
test

Pour l'utiliser dans l'interpréteur (attention aux guillemets et aux \[ \] utilisés par le shell pour avoir la bonne syntaxe):

PS1="\[$txtblu\]foo\[$txtred\] bar\[$txtrst\] baz : "

Symboles d'accueil

Les nombreux symboles de l'interpréteur Bash listés dans le manuel : Quand il est exécuté de manière interactive, bash affiche le symbole d'accueil principal

PS1 dès qu'il est prêt à lire une commande, et le symbole d'accueil secondaire  PS2 quand
il a besoin de plus de données pour exécuter une commande. Bash permet de personnaliser
ces chaînes d'accueil, avec des séquences d'échappement ayant les significations suivantes : 

 \a         le caractère d'alarme ASCII 07
 \d         la date au format "Jour_de_la_semaine Mois Quantième" (ex : "Tue May 26")
 \e         le caractère d'échappement ASCII 033
 \h         le nom d'hôte de la machine, jusqu'au premier point `.'
 \H         le nom d'hôte complet de la machine \n un saut de ligne
 \r         un retour-chariot \s le nom du shell, c'est-à-dire le nom de base de $0 (la portion suivant le dernier slash)
 \t         l'heure actuelle au format HH:MM:SS sur 24 heures
 \T         l'heure actuelle au format HH:MM:SS sur 12 heures
 \@         l'heure actuelle sur 12 heures au format HH:MM am/pm
 \u         le nom de l'utilisateur \v la version de bash (par exemple 2.04)
 \V         le numéro de version complet de bash par exemple (2.04.0)
 \w         le répertoire de travail en cours
 \W         le nom de base du répertoire de travail en cours
 \!         le numéro d'historique de la commande
 \#         le numéro de la commande
 \$         # si l'UID effectif est 0, $ sinon
 \nnn       le caractère de code octal nnn
 \\         le caractère antislash
 \[         débute une série de caractères non-imprimables, qui permettent d'inclure des séquences de contrôle de terminal dans une chaîne d'accueil
 \]         fin d'une série de caractères non-imprimables

 Le numéro de commande, et le numéro d'historique sont généralement différents : le numéro
 d'historique d'une commande correspond à sa position dans la liste d'historique qui peut
 contenir des commandes relues depuis cette liste (voir le paragraphe  HISTORIQUE plus bas),
 alors que le numéro de commande est simplement une position dans la séquence de commandes
 exécutées depuis le début de la session shell actuelle. Après que la chaîne d'invite ait été
 décodée, elle est soumise à l'expansion des paramètres, substitution de commandes, évaluation
 arithmétique et découpage des mots, sous condition de l'option shell promptvars (voir la
 description de shopt au paragraphe  FONCTIONS INTERNES DU SHELL plus bas).

Positionner le curseur

La commande suivante définie la position du curseur :

\[\033[<row>;<column>f\]

La position actuelle peut être sauvegardée en utilisant :

\[\033[s\]

Pour restaurer une position, utilisez la commande suivante :

\[\033[u\]

L'exemple suivant utilise ces commandes pour afficher l'heure dans le coin supérieur droit :

PS1=">\[\033[s\]\[\033[1;\$((COLUMNS-4))f\]\$(date +%H:%M)\[\033[u\]"

La variable d'environnement COLUMNS contient le nombre de colonnes du terminal. L'exemple du dessus retire 4 à cette valeur pour permettre l'affichage des cinq caractères utilisés pour la date sur le bord droit.

Visualiser la dernière valeur retournée

WARNING WARNING WARNING WARNING
This seemed to me to have some bugs, see the entry I added to the discussion page.

Ajouter cette ligne si vous souhaitez voir la valeur retournée par la dernière commande exécutée. Cela devrait fonctionner avec n'importe quel type de commande tant qu'il n'utilise pas PROMPT_COMMAND:

PROMPT_COMMAND='RET=$?; if [[  $RET -eq 0 ]]; then echo -ne "\033[0;32m$RET\033[0m ;)"; else echo -ne  "\033[0;31m$RET\033[0m ;("; fi; echo -n " "'

Cela ressemble à ça:

0 ;) harvie@harvie-ntb ~/ $ true
0 ;) harvie@harvie-ntb ~/ $ false
1 ;( harvie@harvie-ntb ~/ $ 

Le zéro est vert et le reste rouge. Il y a aussi le smiley (remplacez les par ceux que vous souhaitez) d'indications qui sourit si la dernière opération c'est bien passé.

Visualisation avancée

Si vous souhaitez des couleurs, vous devez spécifier les valeurs de $RED et $GREEN:

RED='\e[0;31m'
GREEN='\e[0;32m'

Vous avez à spécifier ces valeurs dans le fichier de configuration de l'interpréteur Bash:

#return value visualisation
PROMPT_COMMAND='RET=$?;'
RET_VALUE='$(echo $RET)' #Ret value not colorized - you can modify it.
RET_SMILEY='$(if [[ $RET = 0 ]]; then echo -ne "\[$GREEN\];)"; else echo -ne "\[$RED\];("; fi;)'

Vous pouvez aussi utiliser les variables $RET_VALUE et $RET_SMILEY dans l'interpréteur. Note, vous devez utiliser les guillemets :

#prompt
PS1="$RET_VALUE $RET_SMILEY : "

Cela vous donnera:

0 ;) : true
0 ;) : false
1 ;( : 

Mais vous pourrez utiliser $RET_VALUE ou $RET_SMILEY dans votre interpréteur, de cette manière:

PS1="\[$WHITE\]$RET_VALUE $RET_SMILEY \[$BLUE\]\u\[$RED\]@\[$EBLUE\]\h\[$WHITE\] \W \[$ERED\]\\$\[$EWHITE\] "

Exemple de Wolfman

Cet auteur a développé un interpréteur de commande qui affiche les 15 derniers caractères du répertoire de travail actuel. Cet exemple fonctionne mieux avec des terminaux à fond blanc. Le code suivant se met dans le fichier ~/.bashrc.

  • Ajouter cette fonction. Si vous avez des noms de répertoires longs ou que vous commencez à obtenir de nombreux sous-répertoires, cette fonction va permettre de n'afficher que les pwdmaxlen caractères du chemin. Ce code provient de Controller la taille et l'apparence du $PWD du Bash Prompt Howto et à été modifié pour remplacer le chemin du répertoire personnel de l'utilisateur par un tilde.
##################################################
# Fancy PWD display function
##################################################
# The home directory (HOME) is replaced with a ~
# The last pwdmaxlen characters of the PWD are displayed
# Leading partial directory names are striped off
# /home/me/stuff          -> ~/stuff               if USER=me
# /usr/share/big_dir_name -> ../share/big_dir_name if pwdmaxlen=20
##################################################
bash_prompt_command() {
    # How many characters of the $PWD should be kept
    local pwdmaxlen=25
    # Indicate that there has been dir truncation
    local trunc_symbol=".."
    local dir=${PWD##*/}
    pwdmaxlen=$(( ( pwdmaxlen < ${#dir} ) ? ${#dir} : pwdmaxlen ))
    NEW_PWD=${PWD/#$HOME/\~}
    local pwdoffset=$(( ${#NEW_PWD} - pwdmaxlen ))
    if [ ${pwdoffset} -gt "0" ]
    then
        NEW_PWD=${NEW_PWD:$pwdoffset:$pwdmaxlen}
        NEW_PWD=${trunc_symbol}/${NEW_PWD#*/}
    fi
}
  • Cet extrait génère la ligne de l'interpréteur et défini les couleurs. Le nom de l'utilisateur, le domaine et le symbole de l'interpréteur ($ ou #) seront en cyan, et si l'utilisateur est root (l'UID de root est toujours 0), ils seront en rouge.
Vérifiez que les variables de couleurs sont écrites avec des guillemets et non de simples quotes. Utiliser les simples quotes peut causer des problèmes avec des lignes qui ne s'affichent pas correctement.
bash_prompt() {
    case $TERM in
     xterm*|rxvt*)
         local TITLEBAR='\[\033]0;\u:${NEW_PWD}\007\]'
          ;;
     *)
         local TITLEBAR=""
          ;;
    esac
    local NONE="\[\033[0m\]"    # unsets color to term's fg color
    
    # regular colors
    local K="\[\033[0;30m\]"    # black
    local R="\[\033[0;31m\]"    # red
    local G="\[\033[0;32m\]"    # green
    local Y="\[\033[0;33m\]"    # yellow
    local B="\[\033[0;34m\]"    # blue
    local M="\[\033[0;35m\]"    # magenta
    local C="\[\033[0;36m\]"    # cyan
    local W="\[\033[0;37m\]"    # white
    
    # emphasized (bolded) colors
    local EMK="\[\033[1;30m\]"
    local EMR="\[\033[1;31m\]"
    local EMG="\[\033[1;32m\]"
    local EMY="\[\033[1;33m\]"
    local EMB="\[\033[1;34m\]"
    local EMM="\[\033[1;35m\]"
    local EMC="\[\033[1;36m\]"
    local EMW="\[\033[1;37m\]"
    
    # background colors
    local BGK="\[\033[40m\]"
    local BGR="\[\033[41m\]"
    local BGG="\[\033[42m\]"
    local BGY="\[\033[43m\]"
    local BGB="\[\033[44m\]"
    local BGM="\[\033[45m\]"
    local BGC="\[\033[46m\]"
    local BGW="\[\033[47m\]"
    
    local UC=$W                 # user's color
    [ $UID -eq "0" ] && UC=$R   # root's color
    
    PS1="$TITLEBAR ${EMK}[${UC}\u${EMK}@${UC}\h ${EMB}\${NEW_PWD}${EMK}]${UC}\\$ ${NONE}"
    # without colors: PS1="[\u@\h \${NEW_PWD}]\\$ "
    # extra backslash in front of \$ to make bash colorize the prompt
}
  • Finalement, ajouter ce code. Il sert à mettre à jour la variable NEW_PWD quand vous vous déplacer quelque part (avec cd) de la variable PS1.
PROMPT_COMMAND=bash_prompt_command
bash_prompt
unset bash_prompt

Exemple de KitchM

Cet exemple offre une meilleure clarté d'affichage. Note, l'utilisation du rouge dans l'interpréteur de l'utilisateur root peut provoquer des warnings.

Premièrement, changer le fond par défaut dans les préférences de votre terminal (cet exemple utilise le terminal de Xfce) en #D2D2D2, et la couleur du texte en #000000. La police de caractère est la DejaVu Sans Mono Book 12. La couleur du curseur est #00AA00, et les onglets actifs en #AF0000.

Deuxièmement, dans ~/.bashrc et après la ligne PS1=, entrer la nouvelle ligne :

PS1='\e[1;33;47m\u \e[1;32;47mon \h \e[1;35;47m\d \@\e[0;0m\n\e[1;34m[dir.= \w] \# > \e[0;0m'

Et placer un # devant la première ligne PS1 pour la désactiver.

Troisièmement, pour l'utilisateur root, éditer /root/.bashrc de la même manière en ajoutant:

PS1='\e[1;31;47m\u \e[1;32;47mon \h \e[1;35;47m\d \@\e[0;0m\n\e[1;31m[dir.= \w] \# > \e[0;0m'

Ne pas oublier de commenter avec # l'ancienne ligne.

C'est un interpréteur à deux lignes et elles ressemblent à ceci :

Pour l'utilisateur standard-

                                           
 Username on  myhost Sun Jan 15 12:30  PM     
[dir.=  /home/username] 1 >                 
                                           

Pour l'utilisateur root-

                                           
 Root on  myhost  Sun Jan 15 12:30 PM             
[dir.= /etc/rc.d] 1 >                       
                                           

Vous pouvez noter que la couleur de fond rend le texte simple à lire et les couleurs de texte rendent le visuel intéressant. Il existe de nombreuses possibilités de personnalisation, juste en utilisant les couleurs.

Changer le titre de la fenêtre

Xterm et d'autres émulateurs de terminal (incluant PuTTY) vous permette de changer le titre du terminal en utilisant les commandes d'échappements. Vous pouvez définir la variable ${XTERM_TITLE} comme suit, puis l’insérer au début de l'interpréteur pour changer le titre du xterm (si disponible) en directory@user@hostname:

#set xterm title
case "$TERM" in
  xterm | xterm-color)
    XTERM_TITLE='\[\e]0;\W@\u@\H\a\]'
  ;;
esac

Le texte entre 0; et \a peut être changer comme vous le souhaitez, par exemple:

export PS1='\[\e]0;Welcome to ArchLinux\a\]\$>> '

Change le titre de la fenêtre en "Welcome to ArchLinux" puis affiche cette simple ligne:

$>> _

Différentes couleurs pour les textes et les sorties consoles

Si vous ne réinitialisez pas la couleur du texte à la fin de votre interpréteur, le texte que vous insérerez dans le terminal restera dans cette couleur. Si vous souhaitez éditer un texte dans une couleur spéciale mais que vous utilisez toujours la couleur par défaut de l'interpréteur, vous devez la réinitialiser après avoir appuyé sur Entrée et avant d'exécuter une commande quelconque. Vous pouvez le faire en placant un débogueur dans votre ~/.bashrc, comme ça :

trap 'echo -ne "\e[0m"' DEBUG

Exemple de bashrc provenant de Gentoo

# /etc/bash.bashrc
#
# This file is sourced by all *interactive* bash shells on startup,
# including some apparently interactive shells such as scp and rcp
# that can't tolerate any output.  So make sure this doesn't display
# anything or bad things will happen !


# Test for an interactive shell.  There is no need to set anything
# past this point for scp and rcp, and it's important to refrain from
# outputting anything in those cases.

if [[ $- != *i* ]] ; then
    # Shell is non-interactive.  Be done now!
    return
fi

# Bash won't get SIGWINCH if another process is in the foreground.
# Enable checkwinsize so that bash will check the terminal size when
# it regains control.  #65623
# http://cnswww.cns.cwru.edu/~chet/bash/FAQ (E11)
shopt -s checkwinsize

# Enable history appending instead of overwriting.  #139609
shopt -s histappend

# Change the window title of X terminals 
case ${TERM} in
    xterm*|rxvt*|Eterm|aterm|kterm|gnome*|interix)
        PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/$HOME/~}\007"'
        ;;
    screen)
        PROMPT_COMMAND='echo -ne "\033_${USER}@${HOSTNAME%%.*}:${PWD/$HOME/~}\033\\"'
        ;;
esac

use_color=false

# Set colorful PS1 only on colorful terminals.
# dircolors --print-database uses its own built-in database
# instead of using /etc/DIR_COLORS.  Try to use the external file
# first to take advantage of user additions.  Use internal bash
# globbing instead of external grep binary.
safe_term=${TERM//[^[:alnum:]]/?}   # sanitize TERM
match_lhs=""
[[ -f ~/.dir_colors   ]] && match_lhs="${match_lhs}$(<~/.dir_colors)"
[[ -f /etc/DIR_COLORS ]] && match_lhs="${match_lhs}$(</etc/DIR_COLORS)"
[[ -z ${match_lhs}    ]] \
    && type -P dircolors >/dev/null \
    && match_lhs=$(dircolors --print-database)
[[ $'\n'${match_lhs} == *$'\n'"TERM "${safe_term}* ]] && use_color=true

if ${use_color} ; then
    # Enable colors for ls, etc.  Prefer ~/.dir_colors #64489
    if type -P dircolors >/dev/null ; then
        if [[ -f ~/.dir_colors ]] ; then
            eval $(dircolors -b ~/.dir_colors)
        elif [[ -f /etc/DIR_COLORS ]] ; then
            eval $(dircolors -b /etc/DIR_COLORS)
        fi
    fi

    if [[ ${EUID} == 0 ]] ; then
        PS1='\[\033[01;31m\]\h\[\033[01;34m\] \W \$\[\033[00m\] '
    else
        PS1='\[\033[01;32m\]\u@\h\[\033[01;34m\] \w \$\[\033[00m\] '
    fi

    alias ls='ls --color=auto'
    alias grep='grep --colour=auto'
else
    if [[ ${EUID} == 0 ]] ; then
        # show root@ when we don't have colors
        PS1='\u@\h \W \$ '
    else
        PS1='\u@\h \w \$ '
    fi
fi

# Try to keep environment pollution down, EPA loves us.
unset use_color safe_term match_lhs


Liens externes

Personal tools
Namespaces
Variants
Actions