GNU/Linux >> Tutoriels Linux >  >> Linux

Comment personnaliser votre invite de terminal Ubuntu

La plupart des systèmes Ubuntu utilisent bash ou dash comme application de terminal par défaut. Vous tapez vos commandes à une invite de commande standard, qui affiche généralement votre nom d'utilisateur, votre nom d'hôte et votre répertoire actuel dans un jeu de couleurs prédéfini. Bash fournit de nombreuses options de personnalisation pour l'invite de commande qui vous permettent non seulement d'ajouter différentes fonctions à l'invite, mais également de les distinguer par différentes couleurs.

Dans cet article, nous utiliserons divers exemples pour personnaliser et recolorer l'invite de commande de notre application de terminal afin que vous puissiez faire la même chose si nécessaire. Nous allons exécuter les commandes et procédures décrites dans cet article sur un système Ubuntu 22.04 LTS.

Afficher la configuration actuelle de l'invite Bash

Lorsque vous ouvrez votre terminal via le tiret ou le raccourci Ctrl+Alt+T, vous voyez l'invite suivante :

[email protected]:directory$

Ce format par défaut répertorie le nom d'utilisateur, le nom d'hôte, puis le répertoire actuel de l'utilisateur. Le bash récupère cette configuration à partir du fichier bashrc qui est configuré individuellement pour chaque utilisateur dans son répertoire personnel. Voici comment ouvrir ce fichier :

$ nano ~/.bashrc

Emplacement :/home/nom d'utilisateur/.bashrc

Vous pouvez également utiliser n'importe quel autre éditeur de texte pour ouvrir ce fichier.

Voici à quoi ressemble ce fichier de configuration. Nous vous montrons ici la partie pertinente du fichier.

La variable PS1 que vous voyez dans l'image ci-dessus a toute la configuration requise pour l'invite bash. Expliquons d'abord ce que les caractères de cette variable indiquent. Vous pouvez afficher clairement cette variable dans la variable PS1 répertoriée après l'instruction else.

  • \u-Ceci indique le nom d'utilisateur de l'utilisateur actuel
  • \h :indique le nom d'hôte de l'utilisateur actuel extrait du nom de domaine complet.
  • \w :indique le répertoire de travail actuel. Votre répertoire personnel est indiqué par un symbole tilde ~.
  • \$ :Ceci indique si vous êtes un utilisateur normal ($) ou un utilisateur root (#).

Vous pouvez également visualiser la configuration de la variable PS1 en renvoyant sa valeur comme suit :

Personnaliser l'invite du shell

Après avoir vu où les informations d'invite sont stockées et ce que la variable PS1 décrit, voyons comment elles peuvent être modifiées afin de personnaliser notre invite bash.

Avant de modifier la variable PS1, il est important de stocker son contenu par défaut dans une nouvelle variable. Cela nous aidera à restaurer l'invite à sa configuration d'origine en cas de problème. Saisissez la commande suivante dans votre Terminal :

$ DEFAULT=$PS1

Maintenant, la variable "DEFAULT" contient toutes les informations dont nous avons besoin pour récupérer nos paramètres d'invite par défaut.

Expérimentons-en maintenant avec notre variable PS1. Saisissez la commande suivante :

$ PS1="\u\$ "

Cette nouvelle valeur de PS1 a l'effet suivant sur votre invite :

Désormais, vous ne pouvez voir que votre nom d'utilisateur et les informations de l'utilisateur racine sans aucune couleur, car aucune information de couleur n'a encore été définie.

Entrons la commande suivante pour que notre invite répertorie également notre répertoire de travail

$ PS1="\u:\w\$ "

Cette nouvelle valeur de PS1 a l'effet suivant sur votre invite :

Comme mon répertoire de travail était home, je ne pouvais voir que le symbole ~. Dans un autre répertoire, disons bin, mon invite affichera les informations suivantes :

Réinitialiser l'invite par défaut

Puisque nous avions stocké la configuration d'origine de la variable PS1 dans la variable DEFAULT, nous pouvons remettre la valeur de PS1 par défaut en lui fournissant la valeur de notre variable DEFAULT.

Que pouvez-vous personnaliser d'autre ?

Si vous souhaitez que votre invite contienne un texte personnalisé spécifique , vous pouvez utiliser la syntaxe suivante :

$ PS1="[custom text] \[email protected]\h:\w\$ "

Exemple :

J'ai configuré mon invite pour inclure un message personnalisé comme suit :

Vous pouvez incorporer les caractères de base suivants dans votre invite :

Personnage Objectif
\d La date au format jour mois.
\f Le personnage de la cloche.
\a Le caractère d'échappement.
\h Le nom d'hôte de l'utilisateur actuel jusqu'à '.'
\H Le nom d'hôte de l'utilisateur actuel.
\l Nom de base du terminal.
\j Le nombre de tâches exécutées par le shell.
\r Retour chariot.
\n Une nouvelle ligne.
\u Nom d'utilisateur de l'utilisateur actuel.
\v Version bash.
\! Numéro d'historique d'impression de la commande en cours d'exécution.

Vous pouvez inclure l'heure système actuelle dans votre invite via la commande suivante :

$ PS1=”\A\u: \w\$ “

Cette nouvelle valeur de PS1 a l'effet suivant sur votre invite :

Vous pouvez également personnaliser votre invite pour inclure une sortie d'une commande ; cela vous donne un nombre illimité d'options à intégrer dans votre invite.

Syntaxe :

$ PS1="\[email protected]\h on `[command]` \w\$ "

Exemple :

Dans cet exemple, je vais configurer l'invite pour inclure le nom du groupe principal auquel appartient l'utilisateur actuel.

$ PS1="\[email protected]\h on `id -gn` \w\$ "

Coloriser l'invite

Après avoir personnalisé l'invite, vous vous rendrez compte que les choses peuvent sembler un peu foirées. La simple raison est qu'il n'est pas trop facile de différencier une fonctionnalité de l'autre si elles sont toutes répertoriées dans la même couleur. Voyons maintenant comment coloriser l'invite pour la rendre plus agréable à l'œil.

Afin d'ajouter des couleurs à une ou plusieurs fonctionnalités, la variable PS1 inclut des balises de couleur. Le texte en surbrillance dans l'image suivante est une balise de couleur.

Voici le format d'une balise de couleur :

\[\033[COLOR]m\]

Par exemple, le nom d'utilisateur et le nom d'hôte par défaut que nous voyons dans notre invite de terminal par défaut sont verts en raison de la balise de couleur suivante :

\[\033[01;32m\]\[email protected]\h

Vous pouvez modifier cette valeur de couleur par rapport à une fonctionnalité d'invite bash pour lui donner une nouvelle couleur ou ajouter une nouvelle balise de couleur à une fonctionnalité qui n'en a pas.

Voici quelques couleurs courantes et leurs valeurs :

Couleur Valeur
Vert 32
Rouge 31
Noir 30
Bleu 34
Cyan 36
Violet 35
Jaune 33
Blanc 37

Exemple :

La commande suivante rendra l'invite rouge car nous spécifions 31 (couleur rouge) dans la balise de couleur :

$ PS1="\[\033[31m\]\[email protected]\h:\w$ "

Utiliser les styles de texte dans l'invite

Vous pouvez ajouter des styles à votre texte d'invite en attribuant une valeur d'attribut à une balise de couleur. Voici le format d'une balise de couleur avec un attribut :

\[\033[ATTRIBUTE; COLORm\]

Vous pouvez utiliser les valeurs d'attribut suivantes pour votre texte d'invite :

Valeur d'attribut Objectif
0 Texte normal (il s'agit de la valeur par défaut même si aucun attribut n'est défini)
1 Dans le terminal Ubuntu, cette valeur spécifie un texte en gras
2 Estomper le texte
4 Souligné du texte
5 Pour le texte clignotant
7 Inverse les couleurs du texte et de l'arrière-plan
8 Pour le texte masqué

Exemple :

Vous pouvez utiliser la commande suivante pour souligner votre invite bash :

$ PS1="\[\033[4;31m\]\[email protected]\h:\w$ "

La valeur 4 indique que nous voulons "souligner" le texte.

Apporter des modifications permanentes à l'invite

Les commandes que vous avez exécutées jusqu'à présent ne changeront que l'invite de la session bash en cours. Après avoir expérimenté la personnalisation du texte et la colorisation de votre invite, et atteint une finale que vous souhaitez définir de manière permanente pour toutes vos sessions bash, vous devez modifier votre fichier bashrc.

Ouvrez le fichier .bashrc et copiez la valeur PS1 que vous avez finalisée dans la ligne PS1 sous le if ; puis ligne. Dans l'image suivante, je viens de changer la couleur de mon invite bash en rouge :

Enregistrez le fichier en appuyant sur Ctrl+X puis en appuyant sur Y . Les modifications apportées à votre invite bash seront désormais permanentes. Quittez le terminal et rouvrez-le pour voir que votre invite bash sera toujours la même que celle que vous avez définie.

Après avoir pratiqué avec ce didacticiel, vous pouvez exceller dans la personnalisation de votre invite bash. Vous pouvez ensuite définir des couleurs pour différencier les différentes fonctionnalités que vous avez incorporées dans l'invite. De cette façon, vous pourrez afficher et utiliser ces informations utiles chaque fois que vous utiliserez l'invite bash.


Linux
  1. Comment personnaliser les couleurs et le contenu de Bash dans l'invite du terminal Linux

  2. Comment Noëlsifier votre terminal et votre shell Linux

  3. Personnaliser le Terminal sur Ubuntu 20.04 - comment faire ?

  4. Comment ajouter une adresse IP supplémentaire à votre serveur Ubuntu 18.04

  5. Comment vérifier la version de votre système d'exploitation Linux

Comment installer Terminator sur Ubuntu 20.04

Comment personnaliser l'invite du terminal Bash sur Debian 10

Comment installer Hyper Terminal dans Ubuntu 20.04

Comment changer la police et la taille de police de votre terminal Ubuntu

Comment ouvrir un terminal dans Ubuntu Linux

Comment installer Guake sur Ubuntu 20.04 ?