¿Por qué uso ZSH y no Bash?
Que levante la mano el que no conozca Bash. Bash (Bourne again shell) es un intérprete de órdenes para nuestro sistema, además de un lenguaje de programación, que es con lo que interactuamos cada vez que abrimos un terminal en Linux. No importa la distribución de Linux que uses, estoy convencido de que por defecto viene con Bash.
El problema es, que si bien usando bash-completion hacemos que Bash obtenga una serie de funciones que no vienen activadas por defecto, como el autocompletado de comandos, hay otras alternativas para nuestro terminal que nos permiten trabajar de forma más productiva y más rápido.
Pero eso no es tan útil como la siguiente opción del comando cd.
Pero la cosa no termina aquí. Ahora les muestro la funcionalidad que más uso posiblemente con ZSH y es la siguiente. Como sabemos, cuando ejecutamos varios comandos en Bash, estos se van guardando en un historial. Si queremos volver a repetir el comando anterior, simplemente con la flecha de arriba lo volvemos a mostrar ¿cierto?
Pues con ZSH es lo mismo, pero, tiene otra característica.. si antes de darle a la flecha de arriba, escribimos un comando, por ejemplo cd, en vez de mostrar todos los comandos anteriores en el historial, nos mostrará, todo los comandos anteriores que ejecutamos solo con cd.
De todos modos, la mejor forma de entender lo que digo es usar ZSH, así que solo tienen que instalarlo. En el caso de ArchLinux y derivados:
ZSH
La historia de Z Shell (a.k.a Zsh) la pueden encontrar en Internet. Yo lo que voy a mostrar son algunas de las cualidades que tiene que lo hacen una excelente opción y los motivos por el cual yo lo uso. Además, para aumentar aún más sus posibilidades y mejorar su apariencia, podemos hacer uso de Oh My Zsh, lo cual podemos instalar fácilmente siguiendo las instrucciones de sus sitio web.Autocompletado de directorios con cd
Cuando usamos el comando cd para trabajar con directorio, ZSH es capaz de mostrar cuales son los posibles directorio y subdirectorios a los que podemos acceder al escribir el comando y pulsar la tecla Tab.
Pero eso no es tan útil como la siguiente opción del comando cd.
Expansión de rutas
Yo lo llamo expansión de rutas, y lo que hace es que, poniendo por ejemplo /h/e/m/ al presionar la tecla Tab, Zsh nos auto-completa la ruta /home/elav/Música/
Cambio de directorio
Suponiendo que en realidad yo no quería acceder a /home/elav/Music, sino a /home/elav/Documents, con el comando cd podemos cambiar de directorios de la siguiente forma:cd <directorio actual> <directorio deseado>
Pero la cosa no termina aquí. Ahora les muestro la funcionalidad que más uso posiblemente con ZSH y es la siguiente. Como sabemos, cuando ejecutamos varios comandos en Bash, estos se van guardando en un historial. Si queremos volver a repetir el comando anterior, simplemente con la flecha de arriba lo volvemos a mostrar ¿cierto?
Pues con ZSH es lo mismo, pero, tiene otra característica.. si antes de darle a la flecha de arriba, escribimos un comando, por ejemplo cd, en vez de mostrar todos los comandos anteriores en el historial, nos mostrará, todo los comandos anteriores que ejecutamos solo con cd.
De todos modos, la mejor forma de entender lo que digo es usar ZSH, así que solo tienen que instalarlo. En el caso de ArchLinux y derivados:
$ sudo pacman -S zsh
Hay muchísimas otras cosas que podemos hacer con este intérprete de órdenes, pero ya queda por ustedes hacer la tarea ;)