I have changed the default shell from Bash to Zsh for a year. The following are some features of Zsh which I use very often on my work.
The <TAB> completion
In Zsh, when you press <TAB> to complete your command, you can use arrow keys to choose which command you want. Or you can just keep clicking <TAB> multiple times to choose the next command.
This is also work for the cd
command if you want to complete a path.
Search commands history smarter
If you press <UP> key, Zsh will not just give you the last command you have typed before. It will search commands which have the same prefix of your current command.
Zsh cares about Git
You can do <TAB> completion for Git commands in Zsh.
Moreover, there are many aliases for git in Zsh, you can use alias | grep git
to list them.
cd aliases
There are also many aliases for cd
command. This feature may save you some strength from typing. You can use alias | grep cd
and alias | grep ‘\.\.’
to see what is your favorite.
Oh My Zsh
Oh My Zsh is an open source framework for managing the Zsh configuration. It contains many awesome themes which can make your Zsh cooler.
The theme I am using is called bira
. I like it because it has a clean interface and I have a whole new line to input my shell command. It can also show the current git branch if your are at a git repository.
There are many other features of Oh My Zsh, you can find them at