OVH Cloud OVH Cloud

Help configuration bash

3 réponses
Avatar
Olivier
Bonjour

Je cherche a donner une couleur de police a different users en mode console
exemple je voudrais que root soit en rouge et les users de base en cyan
Quelqu un pourrait il m expliquer comment et ou configurer cela ?


merci

3 réponses

Avatar
Bruno Patri
Bonjour

Je cherche a donner une couleur de police a different users en mode console
exemple je voudrais que root soit en rouge et les users de base en cyan
Quelqu un pourrait il m expliquer comment et ou configurer cela ?


Tu peux redefinir la variable PS1 dans les fichiers /home/*/.bashrc

par exemple dans le fichier /root/.bashrc

PS1='[33[01;31m][u[ W]$'

Le prompt et la console de root s'afficheront en rouge.

Une explication détaillé ici :
<http://wiki.archlinux.org/index.php/Color%20Bash%20Prompt>

Avatar
Stephane Chazelas
2004-11-16, 07:21(+01), Olivier:
Je cherche a donner une couleur de police a different users en mode console
exemple je voudrais que root soit en rouge et les users de base en cyan
Quelqu un pourrait il m expliquer comment et ou configurer cela ?
[...]


Tu peux surement faire la meme chose en bash, mais en zsh (oui,
d'ailleurs, pourquoi utiliser bash ??), je mettrais dans
/etc/zshrc:

autoload -U colors
colors
typeset -A prompt_colors
prompt_colors=(
root red
olivier green
default cyan
)
PS1="%{$fg[${prompt_colors[$LOGNAME]-$prompt_colors[default]}]%}
%~ ... etc reste du prompt %{$reset_color%}"

--
Stephane

Avatar
Guillaume
Olivier a wroté :
Bonjour


Bonjour,

Je cherche a donner une couleur de police a different users en
mode console exemple je voudrais que root soit en rouge et les
users de base en cyan.


Ceci est géré par la variable PS1.
Dans ton .bashrc, tu définis cette variable, ou -lorsqu'elle devient
trop longue, tu la stockes dans un fichier et tu la définis ainsi :
PS1=`cat ~/ps1.txt`

[Poisson]
Je te donne les miennes en exemple, pour un user ( à remettre en une
seule ligne) :

echo $PS1
e[0;32m][[e[1;34m]$(date
+%H:%M)[e[0;m][e[0;32m]][e[1;36m]W[e[0;32m]@$(if [ $(jobs
|wc -l) != 0 ]; then echo "e[1;37m] (bg: $(jobs | wc -l | awk '{
print $1 }'))[e[1;32m]TuX[e[37;1m] $ [e[0m]"; else echo
"[e[1;32m]TuX[e[1;37m] $ [e[0m]"; fi)
... et pour root :
echo $PS1
e[1;33m][[e[0;31m]$(date
+%H:%M)[e[0;m][e[1;33m]][e[1;31m]W[e[1;33m]@$(if [ $(jobs
|wc -l) != 0 ]; then echo "[e[37;1m] (bg: $(jobs | wc -l | awk '{
print $1 }'))[e[1;35m] TuX[e[37;1m] # [e[0m]"; else echo
"[e[1;35m]TuX[e[1;37m] # [e[0m]"; fi)

[Canne à pêche]
Pour personnaliser le prompt, tu peux commencer par le
bash-prompt-howto :
http://www.tldp.org/HOWTO/Bash-Prompt-HOWTO/
Si tu ne parles pas anglais, cette page-là m'avait bien aidé :
http://ernest2.cheska.net/prompt/prompt.shtml
Et si tu veux la totale, c'est par là :
http://bashish.sourceforge.net


--
Guillaume ~^~ http://marreduspam.com/addc0677
" Voici un UNIX. Il te donnera assez de fil à retordre
Pour t'en tresser une corde, et pour te pendre avec."
(c) Traduction libre d'une citation de M. van Smoorenburg