Z Shell
# Z Shell

Le Z shell ou zsh est un shell Unix qui peut être utilisé de façon interactive, à l'ouverture de la session ou en tant que puissant interpréteur de commande. zsh peut être vu comme un « Bourne shell » étendu avec beaucoup d'améliorations. Il reprend en plus la plupart des fonctions les plus pratiques de bash, ksh et tcsh.

## Origine

La première version de zsh a été écrite par Paul Falstad en 1990, à l'époque étudiant à l'université de Princeton. Le nom « zsh » vient de Zhong Shao, professeur à Yale, et assistant d'enseignement à l'université de Princeton. Paul Falstad pensait que l'identifiant de connexion de Shao, « zsh », était un nom convenable pour un shell.

## Fonctionnalités

En particulier, zsh apporte les fonctionnalités suivantes :

* Complétion des commandes, des options et des arguments de la plupart des commandes. En particulier, taper la suite de caractères « cd <TAB> » ne permettra la complétion que par des répertoires.
* Des fonctions de "Globbing" ou "Expansion" très avancées
* Partage de l'historique des commandes entre tous les shells zsh actuellement actifs.
* Utilisation améliorée des variables et des tableaux.
* Édition des commandes multi lignes dans un seul buffer.
* Correction « orthographique » des commandes tapées.
* Plusieurs modes de compatibilité (zsh peut par exemple être vu comme un shell bourne quand il est exécuté en tant que /bin/sh).
* Invite de commande personnalisable, avec la possibilité d'afficher des informations sur le côté droit de l'écran qui disparaissent si la commande tapée est trop longue.

zsh prend en charge l'Unicode depuis la version 4.3 et s'avère plus flexible et léger que bash, notamment grâce à une découpe du code en modules chargeables dynamiquement.

