The first version of zsh was written by Paul Falstad in 1990, and as for now, the latest production version of Zsh is 5.0.2. You can download it here. Zsh should compile and run on any modern version of UNIX, and a great many not-so-modern versions too.
Major features of Zsh include:
- Programmable command-line completion that can help the user type both options and arguments for most used commands, with out-of-the-box support for several hundred commands
- Sharing of command history among all running shells
- Extended file globbing allows file specification without needing to run an external program such as find
- Improved variable/array handling
- Editing of multi-line commands in a single buffer
- Spelling correction
- Various compatibility modes, e.g. zsh can pretend to be a Bourne shell when run as /bin/sh
- Themeable prompts, including the ability to put prompt information on the right side of the screen and have it auto-hide when typing a long command
- Loadable modules, providing among other things: full TCP and Unix domain socket controls, an FTP client, and extended math functions
- Fully customizable
We won’t give any examples on either how to setup/config Zsh or the differences between Zsh and Bash. It’s highly suggested to read the introduction guide if you have good interest to improve your Bash working environment.
For Mac users, you can also set Zsh as your default shell. With some configurations, you can be more productive on your command-line operations. Have fun!