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 caparazón popular esZsh. 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 ambos shells close entre sí en términos de características generales y funcionalidad, pero hay algunas pequeñas diferencias en 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 tiene características más avanzadas incluidas.
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.
Expansión de parámetrosun zshes mas poderoso queen fiesta.
Zsh tiene un montón decomplementos, temas y marcosdisponible, como el popularOh mi Zsh. Le ayuda a obtener un terminal de aspecto elegante con funciones útiles.
¿Deberías 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 que 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 sea mejor escribir bash guiones que apuntan a la coherencia en torno a 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 características, 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 predeterminado Bash 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 abordar 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, y también 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, Cloud Informática 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 rossies un desarrollador y analista de sistemas al que le encanta compartir consejos sobre Linux, Vim y la CLI.