GNU/Linux >> Tutoriels Linux >  >> Linux

Qu'est-ce que Zsh ? Devriez-vous l'utiliser ?

Vous savez probablement déjà qu'il existe différents shells disponibles sous Linux/Unix. Bash est le shell le plus populaire et le shell par défaut sur la plupart des distributions Linux.

Un autre shell populaire est Zsh. Il est puissant et c'est aussi le Shell par défaut de macOS.

Maintenant, les questions se posent, quelles fonctionnalités font de Zsh un choix populaire et devriez-vous même prendre la peine de l'utiliser ?

Laissez-moi répondre.

Qu'est-ce que Zsh ?

Le "Z shell" a été initialement créé par Paul Falstad lorsqu'il était étudiant à l'Université de Princetown. Zsh a incorporé de nombreuses fonctionnalités utiles présentes dans d'autres shells populaires tels que Bourne-Again Shell (Bash), Korn Shell (ksh), C-shell (csh) et tcsh. Par conséquent, Zsh a été conçu pour offrir un certain niveau de compatibilité avec ces shells, permettant une meilleure adoption par les utilisateurs.

De nos jours, Zsh est un gros projet open source (non maintenu par Paul Falstad) avec une grande communauté d'utilisateurs et de contributeurs, et depuis 2019, c'est le shell par défaut pour macOS d'Apple.

Les différences entre Bash et Zsh ?

De nos jours, le développement actif des deux projets open source maintient les deux shells proches l'un de l'autre en termes de caractéristiques générales et de fonctionnalités, mais il existe quelques petites différences sur la façon de faire certaines choses. Zsh est plus puissant et personnalisable par défaut, tandis que Bash peut nécessiter des scripts supplémentaires (plugins) pour réaliser certaines choses.

D'un point de vue plus large, les principales caractéristiques qui font briller Zsh par rapport à Bash sont :

Zsh propose des fonctionnalités plus avancées.

L'auto-complétion fonctionne plus rapidement et mieux dans Zsh. Dans bash, la complétion de tabulation fonctionne en faisant correspondre le terme depuis le début (mn correspondra à mnt mais pas à findmnt). Dans Zsh, il pourrait afficher des résultats même si le terme est au milieu.

Dans Zsh, l'historique des commandes est partagé entre les shells, ce qui améliore l'expérience utilisateur de l'auto-complétion.

Zsh a également une fonction de correction automatique intégrée. Si vous tapez trop vite et faites une faute de frappe, cela peut suggérer une autre commande correcte.

Zsh est plus configurable et offre plus d'options pour créer des invites utilisateur sophistiquées.

L'expansion des paramètres dans Zsh est plus puissante que dans Bash.

Zsh propose de nombreux plugins, thèmes et frameworks, comme le populaire Oh My Zsh. Il vous aide à obtenir un terminal élégant avec des fonctionnalités utiles.

Devez-vous utiliser Zsh ?

Zsh s'est avéré être un shell puissant et rapide, facilement personnalisable, permettant à l'utilisateur d'avoir une CLI sophistiquée et conviviale facilement configurée pour une utilisation quotidienne.

Si vous êtes un développeur de logiciels ou si vous effectuez tout autre type d'activité qui vous oblige à utiliser souvent la CLI sur votre propre ordinateur, Zsh semble être un bon choix pour améliorer votre expérience générale. C'est surtout si vous êtes prêt à passer du temps à l'explorer.

Dois-je abandonner Bash ?

Bash ne va nulle part et c'est un fait ! Il s'agit du shell standard intégré à la plupart des distributions Linux, c'est-à-dire à la plupart des serveurs, conteneurs, machines virtuelles et instances cloud du monde entier.

En ce qui concerne les scripts, à moins que vous n'ayez une utilisation très spécifique, vous feriez probablement mieux d'écrire des scripts bash visant la cohérence autour des systèmes.

Vous pouvez utiliser Zsh sur votre ordinateur principal mais ne pensez pas que vous ne toucherez plus à Bash, les scripts Bash seront toujours un choix sûr pour les années à venir.

Pourquoi est-ce par défaut sur macOS ?

Outre que Zsh est un excellent shell doté de fonctionnalités intéressantes, la réponse à la question concerne les licences logicielles.

Avant le passage à Zsh, pendant de nombreuses années, MacOS servait de shell par défaut à Bash dans sa version obsolète v3.2 (sortie en 2007 !) qui était la dernière version sous licence GPLv2. Après la 3.2, les nouvelles versions de Bash sont sous licence GPLv3, une licence qui semble suffisamment inacceptable pour Apple.

Après plus d'une décennie de livraison d'un shell obsolète par défaut, Apple décide de traiter ce problème et de passer à Zsh qui est sous licence MIT.

Conclusion

Zsh peut améliorer votre expérience CLI sur votre ordinateur principal, et c'est un choix parfait pour les débutants puisque certains frameworks le font briller avec une simple installation.

Bash est un bon choix pour les scripts, et être à l'aise avec l'installation standard de Bash peut être très utile pour quelqu'un qui s'occupe de DevOps, d'administration système, de cloud computing et de conteneurs, car il s'agit du shell par défaut pour la plupart des distributions Linux.

Si vous voulez essayer, installez Zsh, passez au shell Z et explorez-le. Si vous le trouvez génial, vous pouvez même en faire le shell par défaut.

Informations sur l'auteur :Jonas B. Rossi est un développeur et analyste système qui aime partager des conseils sur Linux, Vim et la CLI.


Linux
  1. Trois commandes Linux que vous ne devriez jamais utiliser

  2. Base de données NoSQL distribuée Elasticsearch - Qu'est-ce que c'est et devriez-vous l'utiliser ?

  3. Pourquoi eval devrait-il être évité dans Bash et que dois-je utiliser à la place ?

  4. À quoi sert $# dans Bash

  5. Qu'est-ce que <() dans bash (et =() dans zsh) ?

Debian vs Ubuntu :Quelle est la différence ? Lequel devriez-vous utiliser ?

Qu'est-ce que Docker Compose et comment l'utiliser ?

Terraform vs Ansible :quelle est la différence et lequel utiliser ?

Qu'est-ce qu'un Homelab et pourquoi devriez-vous en avoir un ?

Qu'est-ce que la fonctionnalité de la communauté ONLYOFFICE et pourquoi devriez-vous l'utiliser ?

Quelle distribution alternative CentOS devriez-vous choisir ?