Juste pour développer la réponse d'Oli (et pour avoir un signet pour ces symboles courts):
L’invite bash ( [email protected]:~$
) n’est que la première d’une ou deux invites
vous pourriez voir:
-
PS1 : l'invite par défaut que vous voyez lorsque vous ouvrez un shell
Sa valeur est stockée dans une variable d'environnement appelée PS1
. Pour voir sa valeur,
tapez
echo $PS1
Cela vous donnera quelque chose comme
\[\e]0;\[email protected]\h: \w\a\]${debian_chroot:+($debian_chroot)}\[email protected]\h:\w$
Pour le modifier, vous pouvez définir une nouvelle valeur pour la variable:
export PS1="\u > "
Cela se traduira par une invite comme celle-ci:
stefano >
-
PS2 : votre invite secondaire. Cela s'affiche quand une commande n'est pas terminée.
Tapez echo "asd
et appuyez sur Entrée, l'invite secondaire vous permettra d'entrer plus
lignes jusqu'à ce que vous fermiez les guillemets.
-
PS3 est l’invite utilisée pour select
(2)
-
PS4 est l’invite utilisée pour
stack traces (par défaut: +
)
Pour rendre les modifications permanentes, ajoutez-les à la fin de .bash_profile
(ou .bashrc
, voir cette question ) dans votre
répertoire de base.
Voici une liste plus ou moins complète de raccourcis que vous pouvez utiliser pour les composer:
-
\a
le caractère 'cloche'
-
\A
24h heure
-
\d
Date (par exemple, mardi 21 décembre)
-
\e
le caractère "escape"
-
\h
Nom d'hôte (jusqu'au premier ".")
-
\H
Nom d'hôte
-
\j
Nombre de tâches en cours d'exécution (ps)
-
\l
tty actuel
-
\n
saut de ligne
-
\t
Heure (hh: mm: ss)
-
\T
Heure (hh: mm: ss, format 12h)
-
\r
Retour de voiture
-
\s
Shell (c'est-à-dire bash, zsh, ksh ..)
-
\u
Nom d'utilisateur
-
\v
Version Bash
-
\V
Chaîne de version complète de Bash
-
\w
Répertoire de travail en cours
-
\W
Dernière partie du répertoire de travail en cours
-
\!
Index actuel dans l'historique
-
\#
Index des commandes
-
$
Un "#" si vous êtes root, sinon "$"
-
\
Barre oblique littérale
-
\@
Heure (format 12h avec am / pm)
Vous pouvez bien entendu insérer une chaîne littérale et toute commande:
export PS1="\u $(pwd) > "
Où $(pwd)
se place à la place de "la sortie de" pwd.
- Si la substitution de commande est échappée, comme dans
$(pwd)
, elle est évaluée à chaque fois que l'invite est affichée, sinon, comme dans $(pwd)
, elle n'est évaluée qu'une fois au démarrage de bash.
Si vous souhaitez que votre invite comporte des couleurs, vous pouvez utiliser les codes de couleur de bash pour le faire. Le code se compose de trois parties:
40;33;01
Chaque partie peut être omise, en partant de la gauche. c'est-à-dire que "1" signifie gras, "1; 31" signifie gras et rouge. Et vous obtiendrez que votre terminal imprime en couleur en échappant à l'instruction avec [
et en terminant par un m
. 33, ou 1B en hexadécimal, est le signe ASCII "ESCAPE" (un caractère spécial dans le jeu de caractères ASCII). Exemple:
"[1;31mHello World[m"
Imprime "Hello World" en rouge vif.