I've been using zsh for over ten years. Since one of my best friends (now a computational physicist) convinced me to try it in college.
Over time I've temporarily switched to others just to make sure I wasn't being stuck in a rut, but I always have come back to zsh. It's a joy to use as a day to day command line interface.
For writing shell scripts, i.e. actual software implemented in shell, I actually prefer bash. In large part because it's more portable, in the sense that any given machine is likely to have bash already installed.
If you really want your scripts to be portable, you should probably write them in POSIX sh. There might be a high probability that any given machine with a Unix-like operating system will have bash installed, but it is essentially guaranteed that it will have sh.
However, if a person really wants to run your scripts, he can probably install the interpreter for which they were written.
So choosing bash as some sort of middle-ground isn't really justifiable.
Comments
I've been using zsh for over ten years. Since one of my best friends (now a computational physicist) convinced me to try it in college.
Over time I've temporarily switched to others just to make sure I wasn't being stuck in a rut, but I always have come back to zsh. It's a joy to use as a day to day command line interface.
For writing shell scripts, i.e. actual software implemented in shell, I actually prefer bash. In large part because it's more portable, in the sense that any given machine is likely to have bash already installed.
If you really want your scripts to be portable, you should probably write them in POSIX sh. There might be a high probability that any given machine with a Unix-like operating system will have bash installed, but it is essentially guaranteed that it will have sh.
However, if a person really wants to run your scripts, he can probably install the interpreter for which they were written.
So choosing bash as some sort of middle-ground isn't really justifiable.
When it probably covers mostly all computers that will run your script, I don't see why it isn't a good compromise.
dawg, where isn't bash these days?