PS1-Problem, Cmd wird wiederholt

501
Runar

Ich habe PS1den folgenden Wert eingestellt:

PS1="\033[0;37m[\033[1;33m\w\033[0;37m]\n\t \[[34m\]\u\033[0;37m@\[[34m\]\[[1m\]\h\[(B[m\] $" 

Das Problem ist, dass jeder Befehl, der mehr als eine Zeile umfasst, eine Schleife bildet und keine neue Zeile generiert. Also überschreibe ich die bereits eingegebene Zeile. Was ist los mit dem PS1?

1
Das ist nicht einmal ein gültiger Befehl. Bash wartet auf weitere Eingaben vor 12 Jahren 0

1 Antwort auf die Frage

6
Ignacio Vazquez-Abrams

Nicht druckbare Zeichen in der Eingabeaufforderung Notwendigkeit von umgeben sein, \[und \]dass bash so kann die Länge der Linien prompt und richtig aufnehmen verfolgen, die sie über die Kante des Anschlusses gehen.

SO sollte ich vor und nach welchen Teilen der Zeile hinzufügen? Runar vor 12 Jahren 0
Sie fügen es vor und nach den Teilen hinzu, die nicht gedruckt werden, so oft wie erforderlich. Ignacio Vazquez-Abrams vor 12 Jahren 0
Aber die Zeile wird gedruckt, aber wenn ich einen langen Befehl eingebe, wird eine Schleife ausgeführt. Runar vor 12 Jahren 0
ZEICHEN. Versuchen Sie es nochmal. Ignacio Vazquez-Abrams vor 12 Jahren 0
Danke vielmals! Es funktioniert jetzt :) PS1 = "\ 033 [0; 37m [\ 033 [1; 33m \ [\ w \] \ 033 [0; 37m] \ [\ n \] \ [\ t \] \ [$ \] \ [\ u \] \ 033 [0; 37m @ \ [$ \] \ [$ \] \ [\ h \] \ [$ \] \ $ ` Runar vor 12 Jahren 0