I’ve been using bash as primary shell since I started using Linux. It’s ok. Don’t bother looking for a better solution until I ran into this blog post about My favourite zsh features. TLDR people? Watch this Getting Started with ZSH (and oh my zshell) on Ubuntu from the same author of the blog post.
It seems pretty good for interactive tasks and that auto completion feature is a dope. So,I decided to give a try.
For Debian system, just install it with aptitude tool by
1 sudo apt-get install zsh
Details of installing zsh can be seen at Installing ZSH.
To replace the default shell to zsh, there are several ways to do it. However, I recommend installing oh-my-zsh and switching shell is done automatically.
oh-my-zsh is an extension of zsh shell, which provides themes and plug-ins.
It can be installed using wget or curl by
1 sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
1 sh -c "$(wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
If you encounter an authentication problem, it can be solved by downloading the install.sh file first and install it manually.
So far, it’s quite similar to bash with additional features. It’s quite easy to adapt for bash users. For coders, I think zsh is a better option than bash. Check out this LevelTutsPlus youtube clip about how themes and plug-ins can help developers to aid at cmd tasks.
From my a week long experience with zsh, The following points can be made:
- It’s fancy and looks better than bash.
- plug-ins are helpful but too much plug-ins make the shell slow down.
- Developer related plug-ins are really intuitive and working nicely.
- Error prompting and giving feedbacks and predicted actions make it friendly.
- Opening files and some actions are slightly slower than bash. It might be the drawbacks of oh-my-zsh plug-ins.
- I am still exploring the usage of zsh features from this Zsh features.
So, try it and I kinda believe that you will fall in love with it in no time. Cheers!