Terminal-Eingabeaufforderung nach Änderung des PS1-Werts fehlerhaft


9

Ich habe achtlos einen Befehl in das Terminal eingegeben, der in einem Shell-Skript enthalten sein sollte:

export PS1=$PATH:~/drush23/drush/

jetzt stattdessen in meinem Terminal:

ubuntu@ip-10-16-134-18:/home/ubuntu$

Ich sehe es:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/ubuntu/drush23/drush/

und wenn ich Verzeichnisse wechsle, bleibt diese Zeile immer ... Ich weiß nicht, was ich tun soll

Ich habe byobu ...

Antworten:


13

$PS1ist eine Umgebungsvariable, die Ihrer Shell mitteilt, wie die Eingabeaufforderung formatiert werden soll. Das Ändern des Werts mit export, wie Sie es getan haben, gilt nur für diese Sitzung. Sie können also einfach eine neue Shell öffnen (keine Sub-Shell) und eine vertraute Eingabeaufforderung sehen.

Wenn Sie Ihre Eingabeaufforderung in dieser Sitzung wirklich wieder verwenden möchten, führen Sie einfach die Einstellungsdatei Ihrer Shell erneut aus. Für Bash-Benutzer bedeutet dies:

. ~/.bashrc

Ich weiß nicht, ob das für Byobu funktionieren wird (zumindest ohne andere Probleme zu verursachen). Sie können die Eingabeaufforderung jedoch einfach auf einen vernünftigen Wert wie den folgenden einstellen:

export PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

Oder wenn Sie keine Farbaufforderung haben möchten oder können, wäre eine einfachere:

export PS1='\u@\h:\w\$ '

Wo \uist Ihr Benutzername, \hist Ihr Hostname und \wist der vollständige (logische) Pfad Ihres aktuellen Arbeitsverzeichnisses.


Ich wusste nicht, dass die $ PS1 das kontrollierte ... danke!
Moshe Shaham

einfach im Terminal drücken . ~/.bashrc. Die PS1Variable wird zurückgesetzt und Sie sollten Ihre Eingabeaufforderung zurückerhalten.
Souravc

@souravc Sind Sie sicher, dass dies keine Probleme für das OP verursachen würde? Er benutzt Byobu.
Yatharth Agarwal

@ YatharthROCK Ich glaube nicht, dass es ein Problem verursachen würde. Was erwarten Sie als mögliches Problem?
Souravc

@souravc Sorry, habe nicht klar gedacht.
Yatharth Agarwal

1

Sie können PS1einen angemessenen Wert für diese Terminalsitzung festlegen , indem Sie Folgendes verwenden:

export PS1=$'\h:\w\$'

Der alte Wert sollte auch nach dem Schließen und Neustarten des Terminals, einem Neustart usw. wiederhergestellt werden.


0

Ich hatte das gleiche Problem. Ich habe PS1 verwendet, um die Eingabeaufforderung auf "Test" zu setzen.

Später konnte ich nicht mehr zur standardmäßigen farbigen Eingabeaufforderung zurückkehren.

Ich habe jedoch eine Antwort auf dieser Website überprüft und musste überprüfen, welche Shell ich verwende.

Ich habe $ SHELL ausprobiert und es wurde auf den Standardwert für die farbige Eingabeaufforderung zurückgesetzt.

"$ SHELL"

Ich bin kein Profi. Das ist rein zufällig, ich weiß nicht, ob das bei Ihnen funktioniert oder nicht.

Aber es ist einen Versuch wert.


Können Sie erklären, was Sie getan haben SHELL?
Stephen Rauch

Ich habe wirklich keine Ahnung, wie es funktioniert hat. Ich habe auch nichts im Zusammenhang mit Shell bearbeitet. Schauen
Ravi Kiran

1
Zu Ihrer Information, dies führt einfach eine neue Shell aus. Wenn Sie ausgeführt werden exit, kehren Sie zur durcheinandergebrachten Eingabeaufforderung zurück.
NerdOfLinux
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.