terminal – Instituto FOC | Informática ONLINE | FP Informática ONLINE

Personalizar Shell Zsh con Oh My Zsh

Continuación del post Cambio de la shell de Linux

En el anterior artículo, cambiamos la shell que trae por defecto la gran mayoría de distribuciones Linux por la shell de Zsh.

 

¿Qué nuevo nos aporta la shell de Zsh?

Entre las características más importantes destacamos:

    • Manejo de rutas

Puedes moverte más rápidamente tecleando:

 cd /h/u (y pulsando la tecla TAB te autocompleta a la carpeta /home/ubuntu, en el caso de que ésta exista)

    • Autocompletado de ficheros y directorios

Puedes pulsar la tecla TAB para que autocomplete el nombre de archivos y o directorios y en el caso de que existan varias opciones, se desplegará un menú para seleccionar el deseado.

    • Compatibilidad con sh (Bourne Shell)

Puede ejecutar scripts /bin/sh

    • Posibilidad de configurar temas, etc…

Ya teníamos instalado la shell Zsh con el anterior post (el enlace lo tenéis arriba), por lo que ahora vamos a instalarle un tema.

 

Instalando Oh My Zsh

Oh My Zsh es un gestor de plantillas para Zsh, de hecho el más utilizado actualmente.

Para instalar este gestor de plantillas, vamos a instalar la aplicación Git que es una aplicación para control de versiones, ya que como veremos a continuación, en su prompt de comandos se puede incluir información básica de Git, como ver la rama actual. Para ello lo instalamos con:

sudo apt install git-core

Una vez instalado Git, ejecutamos un script que descargará e instalará Oh My ZSH, tecleamos:

sudo wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O – | zsh

Aparentemente nada habrá cambiado, pero si lanzamos Zsh nuevamente veremos el cambio en su prompt:

Una vez tenemos el cambio realizado, vamos a cambiar un tema. Editamos el archivo de configuracion de zsh con el siguiente comando:

nano ~/.zshrc

Buscamos y comentamos ZSH_THEME=”robbyrussell” y lo reemplazamos por el tema de agnoster como vemos en la imagen:

Para guardar el archivo con nano, pulsamos CONTROL + O y a continuación pulsamos Intro y para salir pulsamos CONTROL + X.

Ahora su aspecto se habrá cambiado a algo parecido a esto:

Y no sólo es la nueva apariencia, sino que al tener Git como gestor de control de versiones podemos iniciar un proyecto y como vemos en la imagen veremos la rama en la que estamos trabajando:

Con esto hemos terminado de personalizar la shell de Zsh

Cambio de la shell de Linux

Cambio de la shell de Linux

La gran mayoría de distribuciones Linux actuales, al iniciar el terminal de comandos nos viene con una shell predeterminada llamada bash.

Una shell (o intérprete de comandos) no es más que un programa informático que nos abre una interfaz al usuario por el cual poder teclear comandos o una secuencia de ellos también llamado scripts.

Para conocer la shell que usamos actualmente en nuestro sistema Linux podemos hacerlo tecleando:

$ echo $SHELL

Si queremos conocer todos los shells que tenemos instalados, podemos encontrarlos en el archivo /etc/shells

Bash se caracteriza por formar parte del proyecto GNU y se convirtió en un sucesor de software libre de la shell sh (shell Bourne).

Pese a ser la más usada debido a su facilidad de uso no es la única, y como tal, os vamos a enseñar como poder reemplazarla.

Para ello vamos a instalar una shell llamada zsh el cual posee características como autocompletado de línea de comandos, historial de comandos que aparecen la línea de comandos y multitud de atajos. Muchas de sus características han sido tomadas de shells como bash o ksh. Aparte es altamente personalizable y se pueden encontrar plantillas o temas de personalización.

 

Descarga de zsh

Comenzamos descargando zsh con el siguiente comando (basado en Debian):

$ sudo apt install zsh

Comprobamos que /etc/shells ahora ya incluye zsh

Si deseamos probarlo, podemos abrirlo tecleando zsh (para salir, tecleamos exit)

Como vemos, el prompt fue cambiado a Ubuntu-VM% (el nombre de la máquina seguido de %)

Para reemplazar bash por zsh tecleamos lo siguiente:

$ chsh -s /usr/bin/zsh

Con lo que al cerrar el terminal y volver a entrar nos encontramos con el siguiente cambio:

Podemos regresar en todo momento a la shell bash con:

En próximos artículos mostraremos como personalizar zsh con Oh My Zsh y dotarle de un aspecto visual diferente