What’s your favourite to use? Mine is Fish due to its ease of use and user friendly approach.
Bash is the pepperoni of shell tools being reliable in every field no matter what but I’ve moved to Fish as I wanted to try something different.
So what’s your shell of choice?
Zsh works for me
Plus oh-my-zsh and the powerline 10k theme - this is my go-to shell.
Definitely fish. It does everything i need out of the box. To achieve the same with zsh, i needed a dozen plugins on top of a plugin manager. Here, in satisfied with just Starship as custom prompt.
That said, i’ve been trying nushell recently. Don’t really think it’s for me, but it is pretty interesting
Zsh + oh-my-zsh
Uh. Whatever my distro comes with per default.
I know I’m a heretic but I’m a huge powershell fan. Once you work with an object-oriented shell you’ll wonder why you’ve dealt with parsing text for so long. Works great on Linux, MacOS and Windows, it’s open source, reads and writes csv, json and xml natively, native web and rest service support, built-in support for remote computing and parallel processing and extensive libraries for just about anything you can think of. It takes a little getting used to but it’s worth it.
I use powershell by default on windows and I prefer it for scripting any day of the week vs. shell scripts. It’s not the fastest but you can always plug in .net to your scripts to dramatically improve performance. Sure, I could write the script in rust or whatever to make it even faster, but that’s way more work than I need for the lifespan of the script.
Honestly? Bash. I tried a bunch a few years back and eventually settled back on bash.
Fish was really nice in a lot of ways, but the incompatibilities with normal POSIX workflows threw me off regularly. The tradeoff ended up with me moving off of it.
I liked the extensibility of zsh, except that I found it would get slow with only a few bits from ohmyzsh installed. My terminal did cool things but too slowly for me to find it acceptable.
Dash was the opposite, too feature light for me to be able to use efficiently. It didn’t even have tab completion. I suffered that week.
Bash sits in a middle ground of usability, performance, and extensibility that just works for me. It has enough features to work well out of the box, I can add enough in my bashrc to ease some workflows for myself, and it’s basically instantaneous when I open a terminal or run simple commands.
Fish has continued to add bash compat over time.
while I still use ohmyzsh, a lot of it’s opponents make it’s slowness one of its complaints. You don’t need ohmyzsh to have fancy things, it’s just makes setting it all up a little easier.
bash is so ubiquitous that I never considered anything else.
Don’t try zsh, because you won’t be able to go back to bash after that 😉
nushell is excellent for dealing with structured data. it’s also great as a scripting language.
zsh
Bash or ZSH. Whatever is default.
My job is working with a ton of servers over ssh. Bash is the most convenient balance between features and not needing to do any setup.
Bash is fine. Zsh on Macs is fine too. I can’t stress how useful it is to learn busybox if you end up with a shell on an embedded device.
All these crazy shells people talk about are kinda like race car controls. I’m not driving a race car, I’m driving a box truck with three on the tree.
The PEPPPERONI of tools!? that’s not a thing right? why pepperoni??
Because pepperoni rocks
Zsh
No plugin manager. Zsh has a builtin plugin system (
autoload
) and ships with most things you want (like Git integration).My config: http://github.com/cbarrick/dotfiles
Bash, not because its my favourite but because it’s nearly ubiquitous. I don’t want to have to think about which shell I’m using.