Pourquoi la variable dinvite de bash ' est-elle appelée PS1?

La variable denvironnement de linvite bash est appelée PS1 (généralement définie dans ~ / .bashrc). Que signifie PS1? Existe-t-il une PS2?

Réponse

PS1 signifie « Prompt String One » ou « Prompt Statement One », la première chaîne dinvite (que vous voyez en ligne de commande).

Oui, il y a une PS2 en plus! Veuillez lire cet article et le wiki Arch et bien sûr Le manuel de référence de Bash .

Commentaires

  • En bref, PS2 est pour les commandes continues (celles qui prennent plus dune line), PS3 est pour lentrée dans un script en cours dexécution, et PS4 est pour le traçage / débogage.
  • @AnsgarEsztermann, votre commentaire pourrait également être une réponse (que je voterais pour).
  • Re: $ PS3. Un exemple de son utilisation est de changer linvite de la commande select en paramétrant dabord PS3, par exemple. PS3="Select by typing the number: "

Réponse

légèrement paraphrasée à partir de Le manuel de référence de Bash

PS1 La chaîne dinvite principale. La valeur par défaut est « \ s- \ v \ $ ».

PS2 La chaîne dinvite secondaire. cest-à-dire pour les commandes continues (celles prenant plus dune ligne). La valeur par défaut est «>».

PS3 La valeur de cette variable est utilisée comme invite pour la commande de sélection. cest-à-dire pour lentrée dans un script en cours dexécution. Si cette variable n’est pas définie, la commande de sélection s’affiche avec ‘#? ».

PS4 La valeur est linvite imprimée avant que la ligne de commande ne soit renvoyée lorsque loption -x est définie. Le premier caractère de PS4 est répliqué plusieurs fois, si nécessaire, pour indiquer plusieurs niveaux dindirection. La valeur par défaut est +.

PS1 et PS2 sont issus du sh dorigine, PS3 et PS4 ont été ajoutés dans le cadre de bash

Voir les exemples ici

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *