Ich habe einen Entwicklungsserver, der auf Digital Ocean gehostet wird und Ubuntu 14.04 verwendet. Ich habe meine Shell auf ZSH umgestellt und entschied mich für das Agnoster - Thema. Damit [email protected]
nicht mehr angezeigt wird, stelle ich den DEFAULT_USER
in meiner .zshrc-Datei ein.
Aus irgendeinem Grund auf dem Ubuntu-Server funktioniert das nicht. Der Hostname wird immer noch angezeigt und geht nicht weg. Ich mache auf meinem Mac OSX genau dasselbe und es funktioniert gut.
Hier sind einige Screenshots:
Weiß jemand was los ist? Ich habe sogar DEFAULT_USER="[email protected]$Host"
ohne Glück versucht.
Wenn ich zum Standard-Thema Robby Russell gehe, funktioniert es einwandfrei.
Es ist das Merkmal nach dies ; Wenn wir ssh
ing sind, wird der Hostname angezeigt.
Durch Überschreiben der Funktion Prompt_context
oder build_Prompt
in Agnoster wird das gerettet. B. am Ende von ~/.zshrc
unterhalb von Ausschnitten.
# redefine Prompt_context for hiding [email protected]
Prompt_context () { }
Hier ist meine Version aus den ersten beiden Antworten. Sie erklären sehr deutlich. Ich werde wieder zusammenführen.
schritt 1. Öffnen Sie Ihre .zshrc
-Datei mit vim .zshrc
schritt 2. Gehen Sie zum Ende Ihrer Datei.
Fügen Sie diesen Code ein:
Vorsicht deinen Code erneut einrücken
Prompt_context() {
if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then
Prompt_segment black default "%(!.%{%F{yellow}%}.)$USER"
fi
}
Referenzlink: Code des Motivcodes
Ich hoffe das hilft :)
Ich verwende auch ein Agnoster-Thema.
Bearbeiten Sie agnoster.zsh-theme
und suchen Sie [email protected]%m
und löschen Sie @%m
.
Bildbeispiel:
Sie können DEFAULT_USER="[user name]"
in Ihrer .zshrc
-Datei festlegen, und der [email protected]
wird in Ihrem Terminal nicht mehr angezeigt.
Um den [user name]
zu erhalten, geben Sie id -un
in Ihr Terminal ein und geben den [user name]
-Wert aus.
Wenn Sie macOS verwenden, genügt die Hinzufügung einer einzelnen Zeile zu Ihrer ~/.zshrc
-Datei, um den Computernamen im Terminal auszublenden:
# Where we specify the theme
ZSH_THEME="agnoster"
# Force yourself as the system's default user
DEFAULT_USER="$(whoami)"
Dadurch wird "$user" != "$DEFAULT_USER"
check here negiert, wodurch der Computername lokal verborgen wird, während er weiterhin für SSH-Verbindungen angezeigt wird.
Meine Konfiguration in ~/.oh-my-zsh/themes/agnoster.zsh-theme
Prompt_context() {
# Custom (Random emoji)
emojis=("⚡️" "????" "????" "????" "????" "????" "????" "????" "????" "????" "????" "????" "????" "????" "????????" "????" "????")
Rand_EMOJI_N=$(( $RANDOM % ${#emojis[@]} + 1))
Prompt_segment black default "${emojis[$Rand_EMOJI_N]} "
}
1 . Open ~/.zshrc Zeile hinzufügen: DEFAULT_USER = whoami
oder Export DEFAULT_USER = myusername (mac os x)
2 . Öffnen Sie die Dateien ~/.oh-my-zsh/themes/agnoster.zsh-theme.
find ## Main Prompt add # für Prompt_context-Zeile.
Bezogen auf den Kontext: Manchmal funktioniert die Beschaffung der zshrc nach "source ~/.zshrc" möglicherweise nicht. Starten Sie ein neues Terminal, um die aktualisierten Änderungen anzuzeigen.
Fügen Sie dies in Ihre .zshrc-Datei vor dem 'source $ ZSH/oh-my-zsh.sh' ein.
DEFAULT_USER=drewr
Ich benutze auch Agnoster und dies ist, was ich sage, um den Benutzernamen von der Anzeige zu nehmen.
Hoffe das hilft.
Wir müssen agnoster.zsh-theme
nicht bearbeiten, sondern den unten stehenden Code am Ende von .zshrc
anhängen:
export USER=''
Prompt_context() {
if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then
Prompt_segment black default "%(!.%{%F{yellow}%}.)$USER"
fi
}
wir können export USER=''
wie export USER='john'
ändern, um zu zeigen, was wir wollen.