Fishing for shells
A few months ago I discovered fish, a rather unusual shell for *nix systems. I very quickly set it as my default shell for all my machines, because it offers many things that most popular shells, such as bash, do not. For example, auto completion and suggestions. It knows what options are available for commands and suggests them for you, and it remembers earlier commands and presents them to you. It’s also very colorful, which in my eyes is very helpful, but might be off-putting to conservatists and minimalists. Script-wise it’s a lot different from sh and bash, but I prefer to write all my scripts in sh either way.
You can download it here. Make sure you do not use apt-get or similar, because you’ll probably download an ancient version that lacks many features that makes fish so amazing.
If you do try it out, remember to use my config.fish file which you can download from my Scripts and stuff page and place it in ~/.config/fish/ It’s rather empty at the moment, so please give me hints and tips!
In case you like it and want to use it as your default shell, first make sure /usr/bin/fish is somewhere in your /etc/shells file:
$ cat /etc/shells
# /etc/shells: valid login shells
If not, just run the following command:
sudo echo /usr/bin/fish >> /etc/shell
Once this is done, just run
chsh -s /usr/bin/fish
The next terminal you open should now default to fish.