Weird footguns don't matter if you stick to using shell for control flow, composition, and interpolation, and don't use all the weird things you have to look up every time. It's also very easy to do something in the commandline then just
tail -n 8 $HISTFILE > script.sh
and very little to no editing is needed to make that useful. Shell is not a programming language, it's an interface to the OS, and thinking about it like a programming language is just asking for frustration.
> Shell is not a programming language, it's an interface to the OS, and thinking about it like a programming language is just asking for frustration.
I guess this just isn’t obvious to me. Where do you see the boundary between “interface to the os” and “programming language”?