Comment changer de bash invite
- 3606
- 1094
- Rayan Lefebvre
L'invite «bash» sur l'interface de ligne de commande est ce peu de texte qui précède vos commandes. C'est généralement le nom d'utilisateur suivi du nom d'hôte sur la plupart des systèmes, donc la syntaxe peut ressembler à quelque chose comme user @ linuxconfig $
Par exemple. Il suffit de dire que l'invite de ligne de commande bash par défaut sur de nombreux systèmes Linux est assez minime.
Comme nous le verrons dans cet article, il peut être facilement modifié en modifiant le bash Ps n
variables, et nous pouvons inclure des informations telles que le temps d'affichage, le chargement, le nombre d'utilisateurs utilisant le système, la disponibilité et plus. Dans ce tutoriel, vous verrez comment embellir votre invite bash avec des couleurs et des informations supplémentaires sur un système Linux.
Dans ce tutoriel, vous apprendrez:
- Quelles sont les variables de coquille PS1 et PS2
- Comment créer des invites de shell personnalisées
- Quels sont les caractères que nous pouvons utiliser pour personnaliser une invite de shell
Catégorie | Exigences, conventions ou version logicielle utilisée |
---|---|
Système | Toute distribution Linux |
Logiciel | Coquille |
Autre | Connaissance minimale de la coquille de bash. Accès privilégié à votre système Linux en tant que racine ou via le Sudo commande. |
Conventions | # - Exige que les commandes Linux soient exécutées avec des privilèges racine soit directement en tant qu'utilisateur racine, soit par l'utilisation de Sudo commande$ - Exige que les commandes Linux soient exécutées en tant qu'utilisateur non privilégié régulier |
Variables rapides de bash
Comme tout le reste sur un système Linux, il en va de même pour l'invite bash peut également être personnalisée. Nous pouvons accomplir la tâche en modifiant les valeurs de bash
PS1
, PS2
, PS3
, et PS4
variables. Pour garder les choses simples, cet article se préoccupera des deux premiers. Utilisez le écho
commande pour voir leurs valeurs actuelles: $ echo "BASH PS1 Variable:" $ ps1 $ echo "BASH PS2 Variable:" $ ps2Invite de bash ps1 et ps2
Variable invite de bash PS1
PS1
est la principale variable invite. Le nôtre est actuellement:
\ [\ e] 0; \ u @ \ h: \ w \ a \] $ debian_chroot: + ($ debian_chroot) \ [\ 033 [01; 32m \] \ u @ \ h \ [\ 033 [00m \]: \ [\ 033 [01; 34m \] \ w \ [\ 033 [00m \] \ $
Cela a l'air un peu déroutant, car une grande partie était utilisée pour définir les couleurs que vous voyez dans la capture d'écran ci-dessus. Le point à retenir ici est l'utilisation des personnages de bash spéciaux \ u
(utilisateur), \ H
(nom d'hôte), et \ w
(Répertoire de travail actuel). Ces types de caractères nous permettent d'afficher des informations personnalisées qui changeront avec les circonstances de l'invite bash. Plus d'entre eux seront couverts ci-dessous.
Variable invite de bash PS2
PS2
La variable de coquille de bash est l'invite secondaire et est généralement réglé sur >
. Cette invite s'affiche si le shell attend une entrée utilisateur, par exemple si vous utilisez des guillemets et oubliez de les fermer.
$ echo "Texte avec des citations manquantes>Diagramme invite de bash de Linux
Bash Invite Special Characters
L'invite bash peut être personnalisée en utilisant des caractères spéciaux. Voici un aperçu rapide des personnages les plus utilisés et leur signification:
Bash Character Special | Bash Explication du caractère spécial | Bash Character Special | Bash Explication du caractère spécial |
---|---|---|---|
\un | un caractère de cloche ASCII (07) | \d | La date au format «Date du mois de la semaine» (E.g., «Mais 26 mai») |
\] | mettre fin à une séquence de caractères non imprimés | \ e | Un caractère d'échappement ASCII (033) |
\ H | le nom d'hôte jusqu'au premier '.' | \ H | le nom d'hôte |
\ j | le nombre d'emplois actuellement gérés par le shell | \ l | le nom de base du nom du périphérique du terminal de la coquille |
\ n | nouvelle ligne | \ r | retour en chariot |
\ s | Le nom de la coquille, le nom de base de 0 $ (la partie suivant la finale sabrer) | \ t | L'heure actuelle en 24 heures HH: MM: Format SS |
\ T | L'heure actuelle en 12 heures HH: MM: Format SS | \ @ | L'heure actuelle au format 12 heures AM / PM |
\UN | L'heure actuelle au format HH: MM 24h / 24 | \ u | le nom d'utilisateur de l'utilisateur actuel |
\ V | La version de Bash (E.g., 2.00) | \ V | La sortie de Bash, Version + Patchelvel (E.g., 2.00.0) |
\ w | Le répertoire de travail actuel | \ W | le nom de base du répertoire de travail actuel |
\! | le numéro d'histoire de cette commande | \ # | le numéro de commande de cette commande |
\ $ | Si l'UID efficace est 0, un #, sinon un $ | \ nnn | le caractère correspondant au nombre octal nnn |
\\ | une barre oblique inverse | \ [ | Commencez une séquence de caractères non imprimants, qui pourraient être utilisés pour intégrer un Séquence de contrôle du terminal dans l'invite |
\ D format | Le format est transmis à Strftime (3) et le résultat est inséré dans la chaîne invite; Un format vide se traduit par une période spécifique aux paramètres régionaux représentation. Les accolades sont nécessaires |
Personnalisation de l'invite de bash
Une fois qu'un utilisateur s'est connecté au système, les variables d'environnement utilisateur sont initialisées à partir de divers fichiers:
/ etc / profil
ou/ etc / bashrc
(Wide System)~ /.bash_profile
,~ /.bash_login
,~ /.profil
,~ /.bashrc
ou~ /.bash_logout
(spécifique à l'utilisateur)
Il est important de savoir que toutes les variables d'environnement utilisateur ont une durée de vie égale à la session terminale. Lorsque la session terminale est fermée, les variables de l'utilisateur, y compris les variables de coquille de bash, définies lors d'une session terminale sont vidées et redéfinies à nouveau lorsqu'une nouvelle session de terminal est créée.
Dans les sections ci-dessous, nous définirons deux variables pour prouver cette déclaration.
Personnalisation des instructions de la variable bash étape par étape
Nous allons maintenant modifier le ~ /.bashrc
Fichier de configuration pour afficher une invite de bash personnalisée. Comme mentionné ci-dessus, nous devrons déconnecter notre session de terminal actuelle et nous reconnecter pour remarquer les modifications qui prennent effet ou simplement utiliser le source
Commande comme indiqué ci-dessous.
- Utilisez Nano ou un autre éditeur de texte pour modifier le
~ /.bashrc
déposer. Alternativement, nous pouvonsécho
les nouveaux paramètres de l'invite de shell dans le fichier.$ echo "ps1 = 'ma nouvelle invite de bash @ \\ t: \\ w \\ $'" >> ~ /.bashrc
- Faire prendre effet les modifications avec les éléments suivants
source
commande.$ source ~ /.bashrc
- Vous devriez maintenant voir la nouvelle invite:
Ma nouvelle invite bash @ 16: 42: 58: ~ $
Invite bash personnalisée sur Linux
Changer les couleurs invites du premier plan et des bash
Voir le tableau ci-dessous pour les différentes couleurs utilisées pour modifier l'arrière-plan de l'invite de la coque bash et le premier plan:
Couleur | Numéro de premier plan | Numéro de fond |
---|---|---|
Noir | 30 | 40 |
Rouge | 31 | 41 |
Vert | 32 | 42 |
Brun | 33 | 43 |
Bleu | 34 | 44 |
Violet | 35 | 45 |
Cyan | 36 | 46 |
Gris clair | 37 | 47 |
Pour changer la couleur de votre invite bash, la syntaxe suivante est utilisée:
export ps1 = '\ [\ e [CODE COULEURm \] [Exemple] \ [\ e [0m \] $ '
\ e [
= Marque le début d'un mod de couleurColor
= Le numéro de couleur souhaité, suivi dem
\ e [0m
= Marque la fin d'un mod de couleur
Certains exemples, en utilisant cette syntaxe, peuvent être vus ci-dessous.
Exemples de bash
- Une invite de bash rouge:
export ps1 = "\ e [31m [exemple] \ e [0m $"
- Une invite pour bash pourpre:
export ps1 = "\ e [35m [exemple] \ e [0m $"
Divers exemples d'invites bash sur Linux. S'adapter au besoin pour répondre à vos besoins - Affichez l'heure actuelle dans l'invite de bash:
export ps1 = "\ u @ \ h \ t: \ $"
- Cette invite bash affiche le nombre actuel de fichiers et répertoires dans le répertoire actuel.
export ps1 = "\ u @ \ h [\ $ (ls | wc -l)]: \ $"
Réflexions de clôture
Dans ce tutoriel, nous avons vu comment changer l'invite bash dans l'interface de ligne de commande sur un système Linux. Non seulement cela peut rendre notre terminal de ligne de commande beaucoup mieux, mais nous pouvons également utiliser les caractères spéciaux de Bash pour afficher de nombreuses informations utiles. N'hésitez pas à adapter certains de nos exemples à vos propres besoins, afin que vous puissiez obtenir une belle invite de bash avec des informations utiles en même temps.
Tutoriels Linux connexes:
- Comment utiliser la commande de disponibilité sur Linux
- À quelle fréquence devez-vous redémarrer votre serveur Linux?
- Choses à installer sur Ubuntu 20.04
- Une introduction à l'automatisation Linux, des outils et des techniques
- Masterring Bash Script Loops
- Choses à faire après l'installation d'Ubuntu 20.04 Focal Fossa Linux
- Mint 20: Mieux que Ubuntu et Microsoft Windows?
- Système linux hung? Comment s'échapper vers la ligne de commande et…
- Commandes Linux de base
- Comment changer le nom d'hôte sur Linux
- « Introduction aux fonctions d'ordre supérieur en javascript
- Introduction à l'API eBay avec Python Obtention des touches et accéder au bac à sable - Partie 1 »