---
authors:
  - "elkell#6226"
created_at: "2019/11/05"
title: What is Zsh?
---

## What is Zsh?

Zsh, or Z Shell, is a popular alternative shell that extends the most common one, bash. It supports history enhancements, path expansion, environment variable expansion, improved tab completion, improved globbing (searching files), and hundreds more. Zsh has too many features to list here. For a developer, zsh can save tons of time while using a terminal window.

## When should I use Zsh?

If you use a terminal often, zsh can be extremely helpful. The multitude of utilities built into zsh by default alongside being able to add plugins allows anyone to customise zsh to their personal needs.

## When shouldn't I use Zsh?

For developers who you switch between/across multiple computers, setting up Zsh on each machine multiple times can be time-consuming, and thus leading to inconsistent behaviour over multiple machines with some using Zsh, and others using a different shell. If you don't work often with the terminal, installing Zsh may not be necessary.

## Special Features

Zsh has many features and community-made extensions that make it an extremely attractive shell for users. Among extensions, Oh My ZSH is by far the most popular, with hundreds of plugins and themes to extend the functionality and improve the look of Zsh. Oh My ZSH has even inspired similar frameworks for bash, such as Oh My Bash, and Bash It, but with much less robust community support. Other integrations also offer automatic suggestions, mouse support, plugin management, and more.
