Varför heter bash ' s snabbvariabel PS1?

Miljövariabeln för bash-prompten heter PS1 (vanligtvis inställd i ~ / .bashrc). Vad står PS1 för? Finns det en PS2?

Svar

PS1 står för ”Prompt String One” eller ”Prompt Statement One”, den första strängen (som du ser vid en kommandorad).

Ja, det finns en PS2 och mer! Läs den här artikeln och Arch wiki och naturligtvis Bash Reference Manual .

Kommentarer

  • PS2 är kortfattat för fortsatta kommandon (de som tar mer än en linje), PS3 är för inmatning i ett löpande skript och PS4 är för spårning / felsökning.
  • @AnsgarEsztermann, din kommentar kan också vara ett svar (som jag skulle rösta upp).
  • Re: $ PS3. Ett exempel på dess användning är att ändra kommandot från select genom att först ställa in PS3, t.ex. PS3="Select by typing the number: "

Svar

från något omformulerat från The Bash Reference Manual

PS1 Den primära promptsträngen. Standardvärdet är \ s- \ v \ $.

PS2 Den sekundära promptsträngen. dvs. för fortsatta kommandon (de som tar mer än en rad). Standardvärdet är >.

PS3 Värdet på denna variabel används som uppmaning till väljarkommandot. dvs. för inmatning i ett löpande skript. Om denna variabel inte är inställd uppmanas select-kommandot med #? ’.

PS4 Värdet är den uppmaning som skrivs ut innan kommandoraden ekas när alternativet -x är inställt. Den första karaktären i PS4 replikeras flera gånger, efter behov, för att indikera flera nivåer av indirektion. Standardvärdet är +.

PS1 och PS2 är från original sh, PS3 och PS4 lades till som en del av bash

Se exempel här

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *