Recs.
Updated
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.
Specs
Pros
Pro Great install procedure
Zsh will take you through a procedure which is roughly 30 minutes in length before during install. Through this procedure it asks you to set different options and customize the shell the way you want it to. Most of these settings are also found in other shells, but to customize them you have to go dig configuration files while zsh allows you to do it in the beginning.
Cons
Con No consistent philosophy other than to agglomerate features from other shells
Zsh has incorporated features from nearly every other shell. Often without regard for how the feature will interact with existing features. This has lead to a multitude of configurable options that make predicting the behavior of the shell extremely difficult.
Con Requires a lot of configuration to be used fully
Zsh requires a lot of tinkering with configuration files and downloading plugins in order to be able to do tasks which other shells may be able to do out of the box.
Con Not fully compatible with bash
Zsh is unfortunately not fully compatible with bash and bash scripts. So in order to have access to some features you have to stick with bash for scripting.
Recommendations
Comments
Flagged Pros + Cons
Pro Powerful community-driven tools via oh-my-zsh
Oh-my-zsh is a community-driven framework, which helps users with their zsh configuration and plugins. 400 plugins, 200+ themes and auto-updates to always be up to date.
Pro Pipe output to a temporary file:
Some programs don't support loading from stdin, but ZSH can store outputs to a temporary file, example: unzip =(curl http://example.com/someZipFile.zip)