So verbergen Sie den Computernamen und den Benutzernamen in der Eingabeaufforderung des Terminals

62

Wie kann ich Benutzername und Computer in der Eingabeaufforderung des Terminals verbergen?

Im Terminal heißt es

Last login: Mon Jan 13 00:00:14 on ttys000
Whatever:~ UserName$ 

Ist es möglich, nur den aktuellen Ordner und das aktuelle $Zeichen anzuzeigen?

Mohsen
quelle
1
Was meinst du mit aktuellen Ordner anzeigen ? Der aktuelle Ordner wird bereits nach dem angezeigt :. Übrigens: Ich habe den Computernamen in den Systemeinstellungen -> Freigabe in MBP geändert . Jetzt ist meine mbp:~ matt$
Anmeldeaufforderung

Antworten:

91

Ändern Sie Ihre Eingabeaufforderung in Ihrer ~ / .bashrc-Datei. Das Beispiel, nach dem Sie gefragt haben, wäre:

export PS1="\W \$"

Dies würde dazu führen, dass der aktuelle Ordner angezeigt wird, plus ein $ für die reguläre Eingabeaufforderung und ein #, wenn Sie root sind. In diesem Handbuch finden Sie weitere Beispiele dafür, was Sie in Ihrer Eingabeaufforderung anzeigen können.

Bearbeiten:

Gemäß einem der folgenden Kommentare müssen Sie möglicherweise Ihren Quellcode ~/.bashrcvon Ihrem ~/.bash_profileoder sogar diesen Code in Ihrem eingeben ~/.bash_profile. Sie können diesen Artikel lesen, um eine bessere Erklärung für die zu verwendende Datei zu erhalten.

CaldwellYSR
quelle
Ich habe zwei Fragen, da ich nicht so viel Erfahrung im Terminal habe :). 1) Warum schreibst du ~/.bashrc? Ich fand diese Datei unter /private/bashrc. 2) Ich konnte die Datei nicht bearbeiten, da sie gesperrt ist. Ich habe versucht, Berechtigungen ohne Erfolg zu ändern.
Gentmatt
2
/etc/bashrcist die globale Datei für alle Benutzer, ~/.bashrcist Ihre eigene. Definitionen in Ihrem eigenen überschreiben, was auch immer in definiert ist /etc/bashrc.
Nohillside
1
bashrc-Dateien sind Ihre bash-Ressourcendateien. Hier können Sie die Eingabeaufforderung anpassen, Aliase festlegen und Variablen exportieren. Dinge dieser Art. Wie Patrix sagte, haben die Dateien / etc / bashrc und / private / bashrc systemweite Ressourcen. Irgendwo in der Datei / etc / bashrc befindet sich also eine Export-PS1. Wenn Sie Ihre eigene bashrc-Datei unter ~ / .bashrc bearbeiten und Ihre eigene PS1 exportieren, sieht die Eingabeaufforderung in Ihrem Konto anders aus. Wenn Sie möchten, dass es für alle Benutzer geändert wird, müssen Sie die Datei / etc / bashrc mit einem sudo-Befehl bearbeiten.
CaldwellYSR
2
Wenn Sie sich diese Antwort noch ansehen, müssen Sie sie möglicherweise in ~ / .bash_profile einfügen. Führen Sie dann "source ~ / .bash_profile" aus oder öffnen Sie einfach ein neues Terminal.
Chris
exportiere PS1 = '[\ h: \ W \ u \ $', um diesen Vorgang rückgängig zu machen, wenn du es später möchtest.
Boldijar Paul
16
echo "export PS1='$ '" >> ~/.bash_profile
. ~/.bash_profile

Dies wird nur $als eine Eingabeaufforderung verlassen. Wenn Sie die alte Eingabeaufforderung wiederherstellen möchten, müssen Sie ".bash_profile" bearbeiten, um die Zeile "export ..." zu entfernen.

Dmitri
quelle
Dies funktionierte wie ein Zauber in Bash Shell in CentOS 7
Santosh Kumar Arjunan
14

Ich hatte ein ähnliches Problem damit, bekam es aber zunächst nicht zum Laufen.

Das mag daran gelegen haben, dass ich kein Sudo war, aber so oder so funktioniert das genauso gut.

  1. Öffne die Einstellungen im Terminal (oben rechts)
  2. Dann gehen Sie in die Shell-Registerkarte
  3. Kopieren Sie dann den Befehl export PS1="\W \$"; clear;
  4. Starten Sie dann das Terminal neu und sollte funktionieren

Bildbeschreibung hier eingeben

willredington315
quelle
Am besten einfach :).
Huynh Inc
Dies ist das Beste für temporäre Lösungen.
Tarik
11

In diesem Tutorial erfahren Sie, wie Sie Ihre Bash-Eingabeaufforderung ändern. Eine sehr kurze Version (nur Benutzername und kein aktueller Pfad): PS1="\u$ "

Ergebnis: myusername$ cat something.log

timbooo
quelle
Es funktioniert, jetzt ist das Problem, dass die neue Bash-Eingabeaufforderung nicht gespeichert wird. Es wird den alten zeigen, nachdem ich meinen Mac heruntergefahren habe. Warum?
Dienstag,
2
Haben Sie die Variable in die folgende Datei eingefügt /Users/<yourusername>/.bash_profile:?
timbooo
2

Bearbeiten Sie ~ / .bash_profile, um Ihre Änderungen an der Eingabeaufforderung zu speichern.

sudo nano ~/.bash_profile

Fügen Sie am Ende Ihre Änderungen hinzu.

# Change prompt
export PS1="\W \$ "

Beenden, Änderungen speichern. Drücken Sie die Eingabetaste, um den Dateinamen zu bestätigen. Führen Sie source aus, um die Änderung zu sehen.

source ~/.bash_profile
Cloris97
quelle
Danke, das hat bei mir mit OSX 10.12 Sierra sehr gut funktioniert.
Edvard Haugland
Warum benutzen sudo?
dan
0

Erstellen / Bearbeiten Sie Ihre .bash_profile-Datei oder Ihr Stammverzeichnis:

sudo vim ~/.bash_profile

und füge diese Zeile hinzu

export PS1="\W$: "

Das Leerzeichen gibt Ihnen eine Atempause in der Eingabeaufforderung. Nach dieser Änderung sieht Ihre Eingabeaufforderung folgendermaßen aus:

~$: 
Munna Khan
quelle
0

Stellen Sie DEFAULT_USERin der ~/.zshrcDatei Ihren regulären Benutzernamen ein. Sie können Ihren genauen Benutzernamen erhalten, indem Sie whoamiim Terminal ausführen . Etwas wie das:

export DEFAULT_USER=username
John Kennedy
quelle
0

Export PS1 = "[01; 32m] \ W \ $ [00m]"

\ W gibt den aktuellen Ordner an (\ w enthält auch den Pfad). Die Klammern geben die Farbcodes an. Dadurch wird der aktuelle Ordner in Grün gesetzt und die Farbe nach der Eingabeaufforderung auf Weiß zurückgesetzt.

Dovev Hefetz
quelle
-3

Meins ist: PS1 = "\ W [\ 033 [32m] \ $ (parse_git_branch) [\ 033 [00m] $"

Carlos
quelle
Wir suchen lange Antworten, die einige Erklärungen und Zusammenhänge liefern. Geben Sie nicht nur eine einzeilige Antwort; Erklären Sie, warum Ihre Antwort richtig ist, idealerweise mit Zitaten. Antworten, die keine Erklärungen enthalten, werden möglicherweise entfernt.
Tetsujin
Löschen, es ist mir egal, ich habe nur versucht zu helfen!
Carlos