Z Shell, or simply zsh, is a powerful shell interactive for Unix operating system consoles and terminals like as Linux Ubuntu, Mint, Debian among others. In addition to also being a powerful scripting language. Many of the useful features of bash, ksh, and tcsh have been built into zsh; and many extra features to the originals were added.
In this article I demonstrate some of the unique features of zsh. Ideal for reading this document or tutorial series is to have basic knowledge of standard UNIX shells; the intention is to show a reader already familiar with one of the other major shells what makes zsh better or more powerful.
This article is under construction – follow me on social media to receive information on its progress
what is zsh
Zsh is a UNIX command interpreter (shell) usable as an interactive login shell and as a shell script command processor. Of the standard shells, zsh most closely resembles ksh, but includes many enhancements. It does not support POSIX or other shells in its default mode of operation.
See the section on compatibility from the official manual.
Zsh was originally written by Paul Falstad. Now maintained by mailing list members [email protected]. Development is currently coordinated by Peter Stephenson [email protected]. The coordinator can be contacted at [email protected], but code-related issues should generally go to the mailing list.
It is a shell, because it involves the commands you use, but it's a particularly powerful shell — and is free under regular maintenance — with many interactive features allowing you to get the most work done with the least effort.
The most basic: you must have access to a UNIX-like system, such as Linux Ubuntu, Mint, Debian and their derivatives. On Windows you can use installing Cygwin, which provides a UNIX-like environment for programs — given the weakness of the standard Windows command interpreter, this is a good thing to do.
At the moment I don't know if Zsh will work in WSL.
There are ports of older versions of zsh for Windows that run natively, ie without a UNIX environment, although they behave slightly differently in some respects. Particularly I would not recommend using these ports.
Basic knowledge of UNIX and Linux is required; understand how the file system works, that is, what
../filet mean, and some basic commands, for example