Exemples de personnalisation de bash PS1

Exemples de personnalisation de bash PS1
La variable de coquille spéciale est utilisée pour contrôler l'invite bash. Ces variables de coquille sont PS1, PS2, PS3 et PS4. Chaque variable est utilisée à des fins spécifiques. La valeur de ces variables est exécutée en tant que commande avant d'afficher l'invite principale. Le PS1 la variable contient la valeur de l'invite par défaut. Il est utilisé pour modifier l'apparence et l'environnement de l'invite de commande shell. Différents exemples d'utilisation du PS1 une variable a été montrée dans ce tutoriel.

Séquences d'évasion couramment utilisées:

L'invite de commande principale PS1 s'affiche lorsque le shell interactif s'exécute. La chaîne invite peut être personnalisée en utilisant différents types de caractères spéciaux insuffisants. Les caractères les plus couramment utilisés sont donnés ci-dessous.

personnage insuffisant But
\ u Il est utilisé pour afficher le nom d'utilisateur actuel.
\ H Il est utilisé au nom du nom de l'ordinateur.
\ H Il est utilisé au nom du nom d'hôte.
\d Il est utilisé pour afficher la date avec le nom de la semaine, le nom du mois et la date.
\ w Il est utilisé pour afficher le chemin complet du répertoire de travail actuel.
\ W Il est utilisé pour afficher le dernier fragment du répertoire de travail actuel.
\ t Il est utilisé pour afficher l'heure actuelle au format 24 heures.
\ T Il est utilisé pour afficher l'heure actuelle au format 12 heures.
\ @ Il est utilisé pour afficher l'heure actuelle en format 12 heures avec AM / PM.
\ n Jit est utilisé pour ajouter la nouvelle ligne.
\ e Il est utilisé pour ajouter un caractère ASCII Escape.
\ V Il est utilisé pour afficher la version du bash.
Jill Forgeron
\ V Il est utilisé pour afficher la version du bash avec le niveau du patch.

Vérifiez la valeur par défaut de PS1

La valeur par défaut de PS1 contient trois informations. Le nom d'utilisateur, le nom d'hôte et le chemin complet du répertoire de travail actuel. Exécutez la commande suivante pour afficher les valeurs par défaut de la PS1.

$ echo $ ps1

Sortir:

Exemple-1: Afficher la date et l'heure

Vous pouvez ajouter les valeurs de date et d'heure avec la commande en utilisant les caractères \ d et \ t échappés. Exécutez la commande suivante pour définir les valeurs PS1 pour afficher le nom d'utilisateur, la date et les valeurs de temps dans l'invite de commande. Ici le exporter Le mot-clé est utilisé pour modifier temporairement l'invite de commande actuelle.

$ export ps1 = "[\ u @ \ d \ t] $"

Sortir:

Si vous rouvrez le terminal, alors l'invite de commande par défaut apparaîtra. Pour enregistrer la valeur PS1 en permanence, ouvrez le ~ /.Fichier Bashrc en utilisant n'importe quel éditeur de texte. Ici, Nano Editor a été utilisé.

$ sudo nano ~ /.bashrc

Ajoutez la ligne suivante à la fin du fichier, enregistrez le fichier et quittez à partir de l'éditeur.

Ps1 = "[\ u @ \ d \ t] $"

Exécutez la commande suivante Mettez à jour l'invite de commande actuelle pour ajouter la ligne dans le ~ /.fichier bashrc.

$ source ~ /.bashrc

Sortir:

Exécutez la commande suivante pour afficher l'invite de commande en plusieurs lignes en utilisant le caractère '\ n' échappé. Il est utile pour une longue invite de commande.

$ export ps1 = "[\ d] \ n \ u @ \ h: $"

Exemple-2: modifiez l'arrière-plan et la couleur de premier plan

Différentes valeurs de couleur peuvent être utilisées pour définir différentes couleurs pour l'arrière-plan et le premier plan de l'invite de commande. La liste de l'arrière-plan et les noms de couleurs de premier plan avec des valeurs sont donnés ci-dessous.

Couleurs de fond Couleurs de premier plan
Noir = 40 Noir = 30
Rouge = 41 Rouge = 31
Vert = 42 Vert = 32
Jaune = 43 Jaune = 33
Bleu = 44 Bleu = 34
Violet = 45 Violet = 35
Cyan = 46 Cyan = 36
Blanc = 47 Blanc = 37

Exécutez la commande suivante pour modifier la couleur d'arrière-plan de l'invite de commande vers Purple. Ici, le caractère «\ e» avec une valeur de couleur 45 a été utilisé pour définir l'arrière-plan violet. Le caractère «M» a été utilisé pour définir la séquence.

$ export ps1 = "\ e [45m \ u @ \ h: \ w $ \ e [m"

Sortir:

Exécutez la commande suivante pour modifier la couleur de premier plan de l'invite de commande vers blanc. Ici, le caractère «\ e» avec une valeur de couleur 37 a été utilisé pour définir le premier plan blanc. Comme la commande précédente, le caractère 'M' a été utilisé pour définir la séquence.

$ export ps1 = "\ e [0; 37m \ u @ \ h: \ w $ \ e [m"

Sortir:

Exemple-3: Afficher les emoji dans l'invite de commande à l'aide du script

Les emoji peuvent être ajoutés à l'invite de commande de différentes manières. La valeur des octets du caractère emoji a utilisé dans cet exemple. Exécutez la commande suivante à partir du terminal pour afficher les emoji dans l'invite de commande en fonction de la valeur d'état de sortie.

$ export ps1 = '\ u ($ (si [[$? == 1]]; puis printf "\ xf0 \ x9f \ x99 \ x8d"; else printf "\ xf0 \ x9f \ x99 \ x8e"; fi)) \ [\ e [0m \]: \ w $ '

Sortir:

Exemple-4: afficher les emoji dans l'invite de commande à l'aide du script

La façon de générer des emoji est en exécutant un fichier bash, comme indiqué dans cet exemple. Créez un fichier bash avec le script suivant. Le script vérifiera le type de l'utilisateur actuellement connecté. Si l'utilisateur actuel est l'utilisateur normal, il affichera un emoji avec un visage de démarrage et si l'utilisateur actuel est l'utilisateur racine, il affichera un emoji avec une face de lunette.

utilisateur.shot

#!/ bac / bash
#Check l'utilisateur
si [$ uid = 0]; alors
#Set emoji pour root
Exporter ps1 = '😎️ ~: $'
autre
#Set emoji pour l'utilisateur général
Exporter ps1 = '🤩️ ~: $'
Fi

Exécutez la commande suivante pour exécuter le script ci-dessus pour modifier l'invite de commande du shell actuel.

$ utilisateur source.shot

Ensuite, exécutez les commandes suivantes pour vous connecter en tant qu'utilisateur racine et accédez à l'emplacement du dossier du script.

$ sudo -i
$ CD Home / Fahmida / Bash

Exécutez à nouveau la commande suivante pour exécuter le script en tant qu'utilisateur racine.

$ utilisateur source.shot

Sortir:

Selon la sortie, le premier emoji est apparu pour l'utilisateur normal et le deuxième emoji est apparu pour l'utilisateur racine.

Conclusion:

Les moyens de modifier l'invite de commande par défaut de différentes manières en modifiant la valeur de PS1 ont été affichés dans ce tutoriel. Certains caractères échappés couramment utilisés ont été utilisés dans les exemples de ce tutoriel pour aider les lecteurs à connaître l'utilisation de PS1 pour modifier l'invite de commande actuelle temporairement ou en permanence.