Ich möchte die Tilde aus der Anzeige innerhalb der PS1-Variablen entfernen.
Meine aktuelle PS1-Zeichenfolge:
PS1="\h:\w\n$"
Und die Eingabeaufforderung sieht folgendermaßen aus:
lnx-hladky:/tmp/plugtmp
$
Mir gefällt nicht, dass das Verzeichnis $ HOME als Tilde angezeigt wird. Kann das vermieden werden?
Es verursacht Probleme, Beispiel:
lnx-hladky:~/DOC
$
Die Dokumentation sagt:
\w : the current working directory, with $HOME abbreviated with a tilde
\W: the basename of the current working directory, with $HOME abbreviated with a tilde
Gibt es eine Möglichkeit zu vermeiden, dass $ HOME mit einer Tilde abgekürzt wird?
Ich habe einen Weg gefunden, aber ich fühle mich überkompliziert:
PROMPT_COMMAND='echo -ne "\e[4;35m$(date +%T)\e[24m$(whoami)@$(hostname):$(pwd)\e[m\n"'
PS1=$
Kann jemand eine bessere Lösung vorschlagen? Ich habe das Gefühl, dass es nicht ganz in Ordnung ist, so viele Befehle auszuführen, nur um eine Eingabeaufforderung zu erhalten. (Datum, whoami, Hostname, pwd).
command-line
bash
unix
Jirka
quelle
quelle
Antworten:
Bash führt Erweiterungen in der Eingabeaufforderung aus. Stellen Sie einfach sicher, dass Sie ihnen entkommen.
quelle
pwd
bei jeder Eingabeaufforderung ausgeführt. Dennis 'Lösung holt nicht nur die Umgebungsvariable PWD, was viel billiger ist.pwd
ist eine eingebaute Bash. Die Behauptung, dass${PWD}
"viel billiger" ist als$(pwd)
ohne Beweise.Sie müssen nicht so viele Befehle ausführen, wie Sie in Ihrem Beispiel gezeigt haben.
bash
bietet Verknüpfungen für die meisten der von Ihnen erwähnten Dinge.Ihr Beispiel:
kann umgeschrieben werden als:
Wo
\t
zeigt die Zeit (im 24-Stunden-Format),\u
zeigt den aktuellen Benutzernamen, '\ h' zeigt den Hostnamen - diebash
Manpage beschreibt diese und die restlichen Escape-Zeichen, die für Ihre Eingabeaufforderung verfügbar sind .Selbst wenn Sie den
~
Pfad auf den vollständigen Pfad erweitern, wenn Sie nicht wissen, welcher Benutzer den Befehl ausführt und die Benutzer regelmäßig wechseln, können Sie Probleme mit Dateiberechtigungen oder ausführbaren Berechtigungen verursachen.quelle
\u
damit ich weiß, wer ich bin. Vergessen Sie nicht, Ignacios Antwort zu akzeptieren - klicken Sie auf das Kontrollkästchen links neben der Frage.Ich verwende die folgende Einstellung in meiner .bash_profile-Datei
quelle