Ändern der Bash-Eingabeaufforderung

9

Wo ist die Einstellung, die bestimmt, wie die Bash-Eingabeaufforderung aussieht? Speziell auf Arch, aber ich bin sicher, dass andere auch gerne für andere Distributionen wissen würden, ob es anders ist.

Insbesondere möchte ich die Eingabeaufforderung von (K) Ubuntu verwenden

Falmarri
quelle

Antworten:

11

Die Umgebungsvariablen "$ PS1" und "$ PS2" legen das Aussehen der Eingabeaufforderung fest. Sie können dieses Howto überprüfen , um alle verschiedenen Variablen anzuzeigen , die Sie dort eingeben können. `

tante
quelle
6

Wie tante sagte, müssen Sie die $PS1(linke Eingabeaufforderung) (und optional $PS2(zweite Eingabeaufforderung)) einstellen .

(Andere Variable existiert auf anderen Shells wie $RPS1(rechte Eingabeaufforderung) für zsh)

Am besten bearbeiten Sie Ihre .bashrcDatei in Ihrem Home-Verzeichnis und fügen Folgendes hinzu:

export PS1=...

Ich werde Ihnen einen zusätzlichen Link geben , den ich immer nützlich finde, weil es eine gute Liste der verfügbaren Farben gibt.

Elenaher
quelle
2
$PS2ist die Eingabeaufforderung, die Sie erhalten, wenn Sie einen Befehl über mehrere Zeilen schreiben, nicht die richtige Eingabeaufforderung. Die richtige Eingabeaufforderung wäre $RPS1(und $RPS2dementsprechend für mehrere Zeilen) auf zsh - bash hat keine richtige Eingabeaufforderung.
sepp2k
1
$ PS2 enthält die zweite Eingabeaufforderung, wenn eine Shell mehr Eingaben benötigt, nicht die richtige Eingabeaufforderung.
Echox
In der Tat bin ich gerade verwirrt, als ich diese Antwort schrieb. Korrigiert.
Elenaher
Sie sollten wahrscheinlich das Bit über die richtige Eingabeaufforderung ganz entfernen, da dies nur in zsh vorhanden ist und die Frage sich auf bash bezieht.
sepp2k
@seppk: danke für den Kommentar. Ich benutze zsh seit vielen Jahren und hier bei der Arbeit muss ich bash verwenden. Ich habe nicht bemerkt, dass RPS1 nicht verfügbar war.
Elenaher
3

Wie andere gesagt haben, wird dies durch die Umgebungsvariablen PS1und bestimmt PS2.

Ubuntus Standard ps1ist:${debian_chroot:+($debian_chroot)}\u@\h:\w\$

Sie sollten also Folgendes ausführen:

export PS1=${debian_chroot:+($debian_chroot)}\u@\h:\w\$

Um dies jedes Mal auszuführen, wenn Sie sich anmelden, fügen Sie es in Ihre ~/.bashrcDatei ein:

echo "export PS1=${debian_chroot:+($debian_chroot)}\u@\h:\w\$" >> ~/.bashrc
Josh
quelle
1

Da Sie speziell nach Arch gefragt haben (nun, es spielt keine Rolle, aber es ist eine gute Ausrede, um die Antworten zu ergänzen ...), sollten Sie sich diesen Eintrag im Arch-Wiki ansehen: Color Bash Prompt . Und für noch mehr Spaß dieser Thread in den Arch-Foren: Was ist deine PS1? . (Seiten und Seiten von Leuten, die versuchen, sich mit immer ausgefeilteren Eingabeaufforderungen zu übertreffen ... das ist der typische Arch-Benutzer für Sie.)

frabjous
quelle