GNU/Linux >> Tutoriales Linux >  >> Linux

¿Qué es Zsh? ¿Deberías usarlo?

Probablemente ya sepa que hay varios shells disponibles en Linux/Unix. Bash es el shell más popular y predeterminado en la mayoría de las distribuciones de Linux.

Otro shell popular es Zsh. Es poderoso y también es el Shell predeterminado en macOS.

Ahora, surge la pregunta:¿qué características hacen que Zsh sea una opción popular y debería siquiera molestarse en usarlo?

Déjame responder eso.

¿Qué es Zsh?

El "caparazón Z" fue creado inicialmente por Paul Falstad cuando era estudiante en la Universidad de Princetown. Zsh incorporó muchas de las características útiles presentes en otros shells populares como Bourne-Again Shell (Bash), Korn Shell (ksh), C-shell (csh) y tcsh. Por lo tanto, Zsh fue diseñado para ofrecer cierto nivel de compatibilidad con esos shells, lo que permite una mayor adopción por parte de los usuarios.

Hoy en día, Zsh es un gran proyecto de código abierto (no mantenido por Paul Falstad) con una gran comunidad de usuarios y colaboradores, y desde 2019 ha sido el Shell predeterminado para macOS de Apple.

¿Las diferencias entre Bash y Zsh?

Hoy en día, el desarrollo activo de ambos proyectos de código abierto mantiene a ambos shells cerca uno del otro en términos de características generales y funcionalidad, pero existen algunas pequeñas diferencias sobre cómo hacer ciertas cosas. Zsh es más potente y personalizable de forma predeterminada, mientras que Bash puede requerir algunos scripts adicionales (complementos) para lograr algunas cosas.

En una visión más amplia, las características principales que hacen que Zsh brille sobre Bash son:

Zsh incluye funciones más avanzadas.

La finalización automática funciona más rápido y mejor en Zsh. En bash, la finalización de la pestaña funciona al hacer coincidir el término desde el principio (mn coincidirá con mnt pero no con findmnt). En Zsh, podría mostrar resultados incluso si el término está en el medio.

En Zsh, el historial de comandos se comparte entre shells, lo que mejora la experiencia del usuario de autocompletado.

Zsh también tiene una función de autocorrección incorporada. Si escribe demasiado rápido y comete un error tipográfico, puede sugerir un comando correcto alternativo.

Zsh es más configurable y tiene más opciones para crear avisos de usuario sofisticados.

La expansión de parámetros en Zsh es más poderosa que en Bash.

Zsh tiene muchos complementos, temas y marcos disponibles, como el popular Oh My Zsh. Te ayuda a obtener un terminal elegante con funciones útiles.

¿Debería usar Zsh?

Zsh ha demostrado ser un shell potente y rápido, fácilmente personalizable, que permite al usuario tener una CLI elegante y fácil de usar configurada fácilmente para el uso diario.

Si es un desarrollador de software o realiza cualquier otro tipo de actividad que requiera que use la CLI con frecuencia en su propia computadora, Zsh parece ser una buena opción para mejorar su experiencia general. Esto es, especialmente si estás dispuesto a pasar un tiempo explorándolo.

¿Debería abandonar Bash?

¡Bash no va a ninguna parte y eso es un hecho! Es el shell estándar integrado en la mayoría de las distribuciones de Linux, lo que significa, la mayoría de los servidores, contenedores, máquinas virtuales e instancias en la nube de todo el mundo.

Con respecto a las secuencias de comandos, a menos que tenga un uso muy específico, probablemente sería mejor escribir secuencias de comandos bash con el objetivo de mantener la coherencia en los sistemas.

Puede usar Zsh en su computadora principal, pero no crea que ya no tocará Bash, las secuencias de comandos de Bash seguirán siendo una opción segura en los años venideros.

¿Por qué es predeterminado en macOS?

Además de que Zsh es un gran shell con buenas funciones, la respuesta a la pregunta tiene que ver con las licencias de software.

Antes del cambio a Zsh, durante muchos años MacOS se entregó como shell Bash predeterminado en su versión obsoleta v3.2 (¡lanzada en 2007!), que fue la última versión con licencia GPLv2. Después de la 3.2, las versiones más nuevas de Bash tienen licencia GPLv3, una licencia que parece bastante inaceptable para Apple.

Después de más de una década de ofrecer un shell obsoleto como predeterminado, Apple decide solucionar este problema y pasar a Zsh, que tiene la licencia MIT.

Conclusión

Zsh puede mejorar su experiencia CLI en su computadora principal, y es una opción perfecta para principiantes, ya que algunos marcos lo hacen brillar con una instalación simple.

Bash es una buena opción para la creación de secuencias de comandos, además, sentirse cómodo con la instalación estándar de Bash puede ser muy útil para alguien que se ocupa de DevOps, Administración de sistemas, Computación en la nube y Contenedores, ya que es el shell predeterminado para la mayoría de las distribuciones de Linux.

Si quiere probar, instale Zsh, cambie al shell Z y explórelo. Si lo encuentra increíble, incluso puede convertirlo en el shell predeterminado.

Información del autor:Jonas B. Rossi es un desarrollador y analista de sistemas al que le encanta compartir consejos sobre Linux, Vim y la CLI.


Linux
  1. Tres comandos de Linux que nunca debes usar

  2. Base de datos NoSQL distribuida de Elasticsearch:¿qué es y debería usarla?

  3. ¿Qué debo usar en lugar de windows.h en Linux?

  4. ¿Por qué se debe evitar eval en Bash y qué debo usar en su lugar?

  5. ¿Qué es exactamente <() en bash (y =() en zsh)?

Debian vs Ubuntu:¿Cuál es la diferencia? ¿Cuál debería usar?

¿Qué es Docker Compose y cómo se usa?

Terraform vs Ansible:¿Cuál es la diferencia y cuál deberías usar?

¿Qué es un Homelab y por qué debería tener uno?

¿Qué es la función de la comunidad ONLYOFFICE y por qué debería usarla?

¿Qué distribución alternativa de CentOS debería elegir?