Tons of scripts rely on coreutils (sed, awk, grep, head) to manipulate data.
All of those have wildly different behavior depending on their "flavors" (GNU vs Busybox vs BSD) and almost all of them depend on libc being installed.
That's not my experience at all. Shell is often glue between different utilities and unless it's being run in a controlled environment like a docker container, you have no idea what's on the base machine.
I. E. ‘sed -i’ is only in GNU sed. Same with ‘grep -P’.