I have been a bash user for years now. However, I find that zsh is increasingly gaining momentum. I came up with the following questions:

  1. Is zsh really becoming that popular? Will it compete with bash on becoming the standard shell sometime?
  2. Is it time to start writing zsh scripts instead of bash ones?
  3. Is it really worth to switch from bash to zsh?
  4. What is the best tutorial/starter guide to consult for zsh?

closed as not a real question by Kyle Jones, jasonwryan, Chris Down, Michael Mrozek Apr 16 '13 at 5:58

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center. If this question can be reworded to fit the rules in the help center, please edit the question.


This is a grey question. Some of it is definable, but a lot of it is opinion.
In a nutshell, I think zsh is a good shell for personal use (as an interactive shell), but not for system scripts.

I don't think zsh will ever replace bash. Not because it's inferior, but because each shell aims for different goals. Bash is more geared towards standards and compatibility, while zsh is geared more towards power.

As for whether you write scripts in one or the other, I would not write scripts in zsh unless these scripts are for your own personal use. Zsh is not installed on many systems by default. Bash is.

Advantages of one over the other is an extremely opinionated answer. Other than the fore-mentioned points (compatibility vs power), there are a few nice things about zsh. Zsh does support compiling scripts into bytecode. How much of a performance gain this is, I do not know. But it could be fairly significant as shell scripting is a very loose language and I'd imagine parsing it is very difficult. Though for there to be any noticeable difference the script would probably have to be several hundred kb. But this is all just a wild guess.
Going back to the power aspect, zsh also offers a LOT more shell built-ins and variable manipulation features. Seriously, zsh's variable manipulation capability is insane.

Whether it's worth the switch, this is up to you. I personally switched because I was bumping against the limits of what bash could do.
Bash will always be a relevant shell, and it does offer a lot of power. I wouldn't switch until you've gotten to the point that you know how to take advantage of all the features that bash has to offer, and know exactly what it can and can't do.

  • Thank you for answering my question. It is mistakenly taken to be duplicate, but you exactly answered what I wanted to find out and was not elsewhere. Thank you once again. – Bichoy Apr 16 '13 at 4:19

Not the answer you're looking for? Browse other questions tagged or ask your own question.