Por que a variável de prompt do bash é chamada PS1?

49

A variável de ambiente para o prompt do bash é chamada PS1(geralmente definida em ~ / .bashrc). PS1 de quê? Existe um PS2?

Olivier Lalonde
fonte

Respostas:

58

PS1 significa "Prompt String One" ou "Prompt Statement One", a primeira string de prompt (que você vê em uma linha de comando).

Sim, existe um PS2 e muito mais! Leia este artigo e o wiki do Arch e, claro, o Manual de Referência do Bash .

bsd
fonte
24
Resumidamente, o PS2 é para comandos contínuos (aqueles que ocupam mais de uma linha), o PS3 é para entrada em um script em execução e o PS4 é para rastreamento / depuração.
Ansgar Esztermann
2
@AnsgarEsztermann, seu comentário também pode ser uma resposta (que eu votaria).
21412 maxschlepzig
11
Re: $ PS3. Um exemplo de seu uso é alterar o prompt do selectcomando definindo primeiro o PS3, por exemplo. PS3="Select by typing the number: "
Peter.O
24

parafraseado levemente do The Bash Reference Manual

PS1 A principal sequência de prompt. O valor padrão é '\ s- \ v \ $'.

PS2 A sequência de prompt secundária. ou seja, para comandos contínuos (aqueles que tomam mais de uma linha). O valor padrão é '>'.

PS3 O valor dessa variável é usado como prompt para o comando select. ou seja, para entrada em um script em execução. Se essa variável não estiver definida, o comando select solicitará com '#? '

PS4 O valor é o prompt impresso antes da linha de comando ecoar quando a opção -x é definida. O primeiro caractere do PS4 é replicado várias vezes, conforme necessário, para indicar vários níveis de indireção. O padrão é '+'.

PS1 e PS2 são do original sh, PS3 e PS4 foram adicionados como parte do bash

Veja exemplos aqui

Cadarço
fonte