Is there any Bash
shebang objectively better than the others for most uses?
#!/usr/bin/env bash
#!/bin/bash
#!/bin/sh
#!/bin/sh -
I vaguely recall a long time ago hearing that adding a dash to the end prevents someone passing a command to your script, but can’t find any details on that.
You should use #!/usr/bin/env bash
for portability: different *nixes put bash
in different places, and using /usr/bin/env
is a workaround to run the first bash
found on the PATH
. And sh
is not bash
.