J'ai un serveur de développement hébergé sur Digital Ocean, utilisant Ubuntu 14.04. J'ai changé mon Shell pour ZSH et j'ai décidé de choisir le thème Agnoster . Pour que user@hostname
cesse de s'afficher, j'ai défini le DEFAULT_USER
dans mon fichier .zshrc.
Pour une raison quelconque sur le serveur Ubuntu, cela ne fonctionne pas. Le nom d'hôte est toujours affiché et ne disparaîtra pas. Je fais exactement la même chose sur mon Mac OSX, et tout fonctionne bien.
Voici quelques captures d'écran:
Quelqu'un sait ce qui se passe? J'ai même essayé DEFAULT_USER="$USER@$Host"
sans succès.
Si je reviens au paramètre par défaut, Robby Russell theme, cela fonctionne très bien.
C'est la caractéristique selon ceci ; lorsque nous sommes ssh
ing, le nom d’hôte sera affiché.
Le remplacement de la fonction Prompt_context
ou build_Prompt
sur le thème Agnoster sera sauvé. Mettre des extraits ci-dessous à la toute fin du ~/.zshrc
par exemple.
# redefine Prompt_context for hiding user@hostname
Prompt_context () { }
Voici ma version des deux premières réponses. Ils expliquent très clairement. Je vais fusionner à nouveau.
étape 1. ouvrez votre fichier .zshrc
par vim .zshrc
étape 2. allez à la fin de votre fichier.
Collez ce code:
attention à nouveau votre code
Prompt_context() {
if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then
Prompt_segment black default "%(!.%{%F{yellow}%}.)$USER"
fi
}
Lien de référence: code du thème agnoster
J'espère que cette aide :)
J'utilise aussi le thème Agnoster.
Éditez agnoster.zsh-theme
et trouvez $user@%m
et supprimez @%m
.
Exemple d'image:
Vous pouvez définir DEFAULT_USER="[user name]"
dans votre fichier .zshrc
et il ne montrera plus le user@hostname
dans votre terminal.
Pour obtenir le [user name]
, saisissez id -un
dans votre terminal et la valeur [user name]
sera générée.
Si vous êtes sur macOS, il suffit d'ajouter une seule ligne à votre fichier ~/.zshrc
pour masquer le nom de l'ordinateur dans le terminal:
# Where we specify the theme
ZSH_THEME="agnoster"
# Force yourself as the system's default user
DEFAULT_USER="$(whoami)"
Cela annulera la vérification "$user" != "$DEFAULT_USER"
here , masquant ainsi le nom de la machine localement tout en affichant les connexions SSH.
1 . Ouvrir ~/.zshrc Ajouter la ligne: DEFAULT_USER = whoami
ou exporter DEFAULT_USER = myusername (mac os x)
2 . Ouvrir les fichiers ~/.oh-my-zsh/themes/agnoster.zsh-theme.
find ## Main Prompt add # pour la ligne Prompt_context.
En rapport avec le contexte: Parfois, le sourçage de zshrc par "source ~/.zshrc" peut ne pas fonctionner. Démarrez un nouveau terminal pour voir les modifications mises à jour.
Mettez ceci dans votre fichier .zshrc avant le 'source $ ZSH/oh-my-zsh.sh'
DEFAULT_USER=drewr
J'utilise aussi Agnoster, et c'est ce que je mets pour empêcher le nom d'utilisateur de s'afficher.
J'espère que cela t'aides.
Nous n'avons pas besoin de modifier agnoster.zsh-theme
mais d'ajouter le code ci-dessous à la fin de .zshrc
:
export USER=''
Prompt_context() {
if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then
Prompt_segment black default "%(!.%{%F{yellow}%}.)$USER"
fi
}
nous pouvons changer export USER=''
comme export USER='john'
pour montrer ce que nous voulons.