theme powerline mac font best shell ubuntu zsh digital-ocean oh-my-zsh

shell - powerline - zsh themes



ZSH Agnoster Theme mostrando el nombre de la máquina (8)

1. abra ~ / .zshrc agregue la línea: DEFAULT_USER = whoami o exporte DEFAULT_USER = myusername (mac os x)

2. Abra los archivos ~ / .oh-my-zsh / themes / agnoster.zsh-theme.

busque ## Mensaje principal agregue # para la línea prompt_context.

Tengo un servidor de desarrollo alojado en Digital Ocean, usando Ubuntu 14.04. Cambié mi shell a ZSH y decidí seguir con el tema Agnoster . Para que el user@hostname de user@hostname deje de mostrarse, establezco el DEFAULT_USER en mi archivo .zshrc.

Por alguna razón en el servidor de ubuntu, eso no funciona. El nombre de host todavía se muestra y no desaparecerá. Estoy haciendo exactamente lo mismo en mi Mac OSX, y funciona bien.

Aquí hay algunas capturas de pantalla:

Alguien sabe que esta pasando? Incluso probé DEFAULT_USER="$USER@$HOST" sin suerte.

Si vuelvo al tema predeterminado, Robby Russell , funciona bien.


Aquí está mi versión de las dos primeras respuestas. Explican muy claramente. Me fusionaré de nuevo.

  1. paso 1. abre tu archivo .zshrc por vim .zshrc

  2. paso 2. ir al final de su archivo.

  3. Pega este código:

cuidado de nuevo sangrar su código

prompt_context() { if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then prompt_segment black default "%(!.%{%F{yellow}%}.)$USER" fi }

Enlace de referencia: this

Espero que esto ayude :)


Es la característica según this ; Cuando estemos en ssh , se mostrará el nombre del host.

Al anular la función prompt_context o build_prompt en el tema Agnoster se rescatará. Poner debajo de fragmentos de ~/.zshrc al final de ~/.zshrc por ejemplo.

# redefine prompt_context for hiding user@hostname prompt_context () { }


No necesitamos editar agnoster.zsh-theme sino agregar el siguiente código al final de .zshrc :

export USER='''' prompt_context() { if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then prompt_segment black default "%(!.%{%F{yellow}%}.)$USER" fi }

podemos cambiar export USER='''' como export USER=''john'' para mostrar lo que queremos.


Ponga esto en su archivo .zshrc antes de ''source $ ZSH / oh-my-zsh.sh''

DEFAULT_USER=drewr

También uso Agnoster, y esto es lo que pongo para quitar el nombre de usuario.

Espero que esto ayude.


Puede configurar DEFAULT_USER="[user name]" en su archivo .zshrc y dejará de mostrar el user@hostname de user@hostname en su terminal.

Para obtener el [user name] , escriba id -un en su terminal y se mostrará el valor [user name] .


Si está en macOS , la adición de una sola línea a su archivo ~/.zshrc es suficiente para ocultar el nombre de la máquina en la Terminal:

# Where we specify the theme ZSH_THEME="agnoster" # Force yourself as the system''s default user DEFAULT_USER="$(whoami)"

Esto anulará la comprobación "$user" != "$DEFAULT_USER" here , ocultando así el nombre de la máquina localmente mientras aún se muestra para las conexiones SSH.


También estoy usando el tema agnoster.

Edite agnoster.zsh-theme y encuentre $user@%m y elimine @%m .

Muestra de imagen: