On Sat, 18 Aug 2018 10:52:59 +1000 Tim Cross <theophilusx@xxxxxxxxx> wrote: > I think pretty much all *nix systems put core shells like sh, bash, zsh > etc in /bin (as it is guaranteed to be available immediately at boot, while /usr is > not - it could be a separate partition which isn't available until later > in the boot process). They do but at least solaris circa v.9 and now redhat have replaced /bin with a symlink to /usr/bin. Whether you get /bin/sh or /usr/bin/sh out of `which` depends purely on their order in your $PATH. > A way to avoid platform differences is to use /usr/bin/env e.g. > > #!/usr/bin/env bash Except now you can't pass arguments to your bash. You can't win. Although in the case of shell scripts you can get rid of all bash'isms and call '/bin/sh' -- Dmitri Maziuk <dmaziuk@xxxxxxxxxxxxx>