zsh is a shell designed for interactive use, although it is also a powerful scripting language. Many of the useful features of bash, ksh, and tcsh were incorporated into zsh; many original features were added. This document details some of the unique features of zsh. It assumes basic knowledge of the standard UNIX shells; the intent is to show a reader already familiar with one of the other major shells what makes zsh more useful or more powerful. This document is not at all comprehensive; read the manual entry for a description of the shell that is complete and concise, although somewhat overwhelming and devoid of examples.
The text will frequently mention options that you can set to change the behaviour of zsh. You can set these options with the command
% setopt optionname
and unset them again with
% unsetopt optionname
Case is ignored in option names, as are embedded underscores.