Wie ändere ich die Eingabeaufforderung unter Linux?


16

Die Standardeingabeaufforderung lautet

root@monu dev]#

Können wir den Teil "root @ monu" ändern und ihm einen gewünschten Namen geben?

Antworten:


23

Dies wird durch Ändern der Umgebungsvariablen geändert PS1.

Sie können den aktuellen Wert von PS1durch sehen:

root@monu dev# echo $PS1

Sie können den Wert sehen, der gleich ist \u@\h \w\$, wobei:

  • \u : Nutzername
  • \h : Hostname
  • \w : aktuelles Arbeitsverzeichnis
  • \$: ein #Symbol für den Root-Benutzer, ein $Symbol für andere Benutzer

Wenn die Änderung dauerhaft sein soll, müssen Sie das Skript hinzufügen, das den Wert von PS1in ändert ~/.bashrc, da es bei jeder Anmeldung eines Benutzers ausgeführt wird.


1
Vergessen Sie nicht, es auch in Ihre ~ / .bashrc-Datei zu schreiben. zB "PS1 =" meinname \\ $ "".
Keith

5
~ / .bashrc wird nicht jedes Mal ausgeführt, wenn sich ein Benutzer anmeldet. “Wenn eine interaktive Shell gestartet wird, die keine Anmeldeshell ist, liest bash Befehle von ~ / .bashrc und führt sie aus, falls diese Datei vorhanden ist.” - man bash / INVOCATION
Manatwork

Indem Sie sie ändern, können Sie sich ändern. ?
Tshepang

Einzelheiten finden Sie im PROMPTINGAbschnitt mit man bash.
Francesco Turco

Ja aber wie genau Können Sie einige Beispiele nennen?
Peter Mortensen

5

Dies hängt von Ihrer Shell ab. Als wichtige Randnotiz sollten Sie das Root-Konto niemals als persönliches Konto verwenden. Erstellen Sie einen normalen Benutzer und richten Sie den Zugriff auf sudo ein. Bitte lesen Sie in Ihrem Distributionshandbuch nach, wie das geht.

In zsh müssen Sie die PROMPT-Variable folgendermaßen einstellen:

PROMPT='%{ESC[38;5;24m%};%{ESC[0m%} '

zshell bietet viele andere Optionen und dies ist wirklich eine minimale Eingabeaufforderung.

In bash können Sie dies folgendermaßen einstellen:

local ROOK="\[\033[38;5;24m\]"
local DEFAULT="\[\033[0;39m\]"
PS1="${ROOK}\$${DEFAULT} "

Beachten Sie, dass ich in beiden Fällen ein Terminal mit 256 Farben habe. Die Manpage wird viel ( man bashoder man zsh) helfen .


2
Hier haben Sie den Root-Account- Fall richtig angegeben, IMO - er darf nicht als persönlicher Account verwendet werden (mit Ausnahme einiger Embedded-Systeme mit sehr geringem Platzbedarf).
Rozcietrzewiacz
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.