Comment personnaliser l'invite de votre terminal Linux pour un meilleur flux de travail
Sommaire
Points clés à retenir
- Personnaliser votre invite Bash n'est pas seulement amusant, cela peut aussi être utile.
- Afficher des informations système simples est facile, mais des invites plus sophistiquées peuvent rapidement devenir complexes.
- Les plugins et scripts tiers vous permettent de personnaliser votre invite beaucoup plus facilement.
Vous en avez assez des invites de terminal des autres qui semblent plus sophistiquées que les vôtres ? Ils ne sont pas seulement beaux, mais une invite bien personnalisée peut également augmenter votre productivité, et il est facile de démarrer.
Pourquoi personnaliser l'invite de votre terminal ?
Ceci est plus important si vous sautez fréquemment entre plusieurs ordinateurs différents, localement ou à distance, mais une invite personnalisée peut vous aider à identifier rapidement l'ordinateur auquel vous êtes actuellement connecté. Si vous copiez votre ~/.bashrc ou d'autres fichiers de configuration sur chaque ordinateur que vous utilisez, ce ne sera pas le cas, mais une invite personnalisée peut faciliter l'identification rapide de votre ordinateur.
Une invite personnalisée peut vous fournir bien plus d’informations que votre nom d’utilisateur ou votre nom d’hôte. Votre invite peut facilement vous indiquer votre répertoire de travail actuel, si le répertoire dans lequel vous vous trouvez est contrôlé en version et si les fichiers de ce référentiel sont à jour, par exemple. Un subtil changement de couleur peut même vous permettre de savoir si la dernière commande que vous avez exécutée a réussi ou non.
En parlant de couleurs, différentes personnes prêtent plus ou moins attention aux différentes couleurs. Si vous trouvez la bonne combinaison, vous constaterez peut-être que vous serez soudainement en mesure d'analyser instantanément plus d'informations à partir de votre invite sans avoir besoin de l'étudier. Certaines couleurs peuvent avoir l'effet inverse, vous devrez donc peut-être expérimenter un peu pour trouver ce qui vous convient.
Bien sûr, vous ne devriez pas ignorer le simple facteur amusant de la personnalisation de l’invite de votre terminal. Bien qu'il existe de nombreuses raisons pratiques, il est toujours possible de simplement profiter un peu plus de votre terminal. Après tout, il y a de fortes chances que si vous utilisez Linux, vous passiez un temps non négligeable dans le terminal, alors autant le rendre joli.
Comment personnaliser votre invite Bash
Pour cet article, nous allons nous concentrer sur la personnalisation du Bourne-Again Shell, mieux connu sous le nom de Bash. Bien que certaines des approches présentées ici soient similaires à ce que vous feriez pour d'autres shells, elles utilisent généralement une syntaxe quelque peu différente, de sorte que vos résultats varieront. Assurez-vous de consulter les pages de manuel ou la documentation appropriée si vous utilisez un autre shell.
La personnalisation de votre terminal implique de définir la variable d'environnement PS1. Vous pouvez définir cela temporairement dans votre terminal, simplement en tapant quelque chose de similaire à ce qui suit :
PS1="Your wish is my command: "
Bien sûr, cela n’est pas vraiment utile, vous souhaiterez donc probablement que votre terminal vous donne des informations appropriées. C'est ici que vous devrez réfléchir aux informations que vous souhaitez afficher et à la manière dont vous souhaitez les formater.
Nous avons une liste de caractères spéciaux essentiels à connaître pour Bash, qui devraient vous aider à démarrer. Pour des informations plus détaillées, vous devrez consulter la section d'invite du manuel Bash.
À titre d'exemple, essayez quelque chose comme ce qui suit :
PS1="u@H W: "
Dans l'exemple ci-dessus, u
imprime votre nom d'utilisateur, tandis que H
imprime le nom d'hôte de votre ordinateur et W
affiche le répertoire de travail. Il ne s'agit pas d'informations supplémentaires que vous trouverez dans votre invite Bash typique, mais cela montre à quel point il peut être facile de formater les informations dans votre invite.
Couleurs et caractères spéciaux
L'ajout de couleurs à l'invite Bash n'est malheureusement pas aussi simple qu'il pourrait l'être. Vous devrez prendre certains codes de couleur ANSI déjà lourds et les transposer légèrement pour les formater correctement dans l'invite. Pour faciliter les choses, voici une liste de couleurs couramment utilisées :
- Noir: 33(30m
- Rouge: 33(31m
- Vert: 33(32m
- Jaune: 33(33m
- Bleu: 33(34m
- Violet: 33(35m
- Cyan : 33(36m
- Blanc: 33(37m
Pour coloriser la sortie ci-dessus, vous utiliseriez quelque chose comme ceci :
PS1=" 33(31mu@ 33(34mH 33(36mW: "
Le résultat est plutôt criard et peut être difficile à lire en fonction de votre expérience, mais il fonctionne comme un exemple de la façon de personnaliser vos couleurs. Vous pouvez utiliser des caractères d'échappement ANSI similaires pour imprimer des caractères spéciaux sur le terminal.
Rendre votre invite permanente
Après avoir testé votre invite, il est simple de conserver vos modifications une fois que vous avez choisi quelque chose que vous aimez. Ajoutez simplement l'invite au fichier .bashrc dans votre répertoire personnel. Par exemple, pour ajouter l'invite colorisée ci-dessus à votre invite Bash, ajoutez ce qui suit à ~/.bashrc
:
export PS1=" 33(31mu@ 33(34mH 33(36mW: "
Bien entendu, il existe également des moyens plus simples de personnaliser votre invite.
Raccourcis vers une invite plus brillante
D'accord, vous pouvez désormais commencer avec quelques personnalisations de base, mais qu'en est-il des configurations exagérées que vous avez vues partout sur Internet ? Il s'agit essentiellement des mêmes techniques que celles que nous avons utilisées jusqu'à présent, mais en utilisant des polices spéciales appelées Nerd Fonts qui utilisent des caractères Unicode pour afficher les icônes.
Bien que vous puissiez commencer à les utiliser vous-même, vous pouvez également utiliser un framework shell existant. L'un des exemples les plus populaires est Oh-My-Zsh, qui, comme son nom l'indique, n'est disponible que pour le shell Z, également connu sous le nom de zsh. Puisque nous nous sommes concentrés sur Bash pour ce guide, cela ne fonctionnera pas pour nous.
Heureusement, il existe d'autres options. L'une des meilleures options au moment d'écrire ces lignes est Starship, qui est une invite personnalisable pour n'importe quel shell, y compris Bash. Il est écrit en rouille pour plus de rapidité et les instructions pour commencer sont simples. Il est même inclus dans les référentiels de certaines distributions Linux comme Arch, Void et openSUSE.
Une autre option populaire est Oh My Posh. Il y a de fortes chances que s'il y a quelque chose que vous souhaiteriez faire avec Starship, vous le pouvez avec Oh My Posh. L’inconvénient est qu’il s’agit d’une plongée beaucoup plus approfondie lorsqu’il s’agit d’apprendre les tenants et les aboutissants du système. Cela dit, si vous souhaitez vraiment peaufiner votre invite, celle-ci offre le plus de flexibilité.
Qu’en est-il des autres coquilles ?
Bien que nous nous concentrions principalement sur l'invite Bash pour cet article, ce n'est pas votre seul choix pour le terminal Linux. Par exemple, sur macOS, Zsh est actuellement le shell par défaut pour plusieurs versions majeures. Il possède quelques fonctionnalités qui valent également la peine d'être examinées par rapport à Bash, en fonction de ce que vous recherchez.
Pour commencer, Zsh propose la complétion par tabulation. C'est plus puissant que la saisie semi-automatique que vous obtenez avec Bash, et cela peut être particulièrement pratique si vous ne vous souvenez pas très bien de vos commandes. Zsh possède également quelques fonctionnalités qui peuvent simplifier la personnalisation de votre invite sans utiliser de framework.
Une autre option est le Friendly Interactive Shell, également connu sous le nom de Fish. Cela donne à Bash et Zsh un aspect franchement spartiate, car ils sont absolument dotés de fonctionnalités juste après leur installation. Ce shell possède de nombreuses fonctionnalités intéressantes, mais son principal titre de gloire réside dans ses suggestions automatiques.
Contrairement à la complétion des onglets, Fish commencera à remplir automatiquement les commandes que vous tapez avec des options courantes. Si vous ouvrez un certain fichier ou un certain répertoire vers lequel vous vous déplacez fréquemment, cela vous sera suggéré dès que vous commencerez à taper. cd
Par exemple. Pour ignorer la suggestion, continuez simplement à taper la commande que vous alliez saisir.
Cette fonctionnalité devient de plus en plus utile à mesure que vous utilisez davantage le shell. Bien que vous puissiez accéder à Zsh via des plugins, il est directement intégré à fish.
Pour essayer d'autres shells, jetez un œil à notre guide pour changer de shell avec chsh.