I've written hundreds of scripts for Busybox for Windows (https://github.com/rmyorston/busybox-w32), Linux bash and macOS zsh. POSIX compatibility means a lot.
WRT the specific concerns of arguments: if you are doing something complicated, use Python. ChatGPT writes it better anyway.
In my experience, more complex scripting is reinventing Gradle, Ansible, Terraform, YAML & similar.
I maintain the most active fork and got into using it when I ported my last employer's software to Windows. This was originally developed in the early 1990s to run on Unix workstations. For portability it used Bourne shell (not bash) and nawk (not gawk). BusyBox allowed them to bundle a single executable with the Windows version that was adequate to run those scripts.
Some projects use busybox-w32 to allow a Unix-centric build system to work on Windows. Julia, for example, seems to use it just to get echo and printf.