>Despite remaining in zsh while in a terminal, I still find myself writing only bash scripts when a script it needed.
I do this too. I think it's good practice; zsh is amazing as an interactive shell, but bash is everywhere.
I do this too. I think it's good practice; zsh is amazing as an interactive shell, but bash is everywhere.
If portability is important, I'd recommend Bourne shell instead.
Sometimes there's a justification for writing shell scripts in bash. E.g. if you only care about Linux forever.
Frequently though, a simple script will unexpectedly grow, and start to require non-trivial data structures, etc. If there's no time for a rewrite in a more appropriate language (Python/Ruby/Perl), then moving to bash can be a compromise.
You caught me, and you're right: sh (not bash) is the portable option.