Usar una línea shebang para invocar al intérprete apropiado no es solo para BASH. Puede usar el shebang para cualquier lenguaje interpretado en su sistema, como Perl, Python, PHP (CLI) y muchos otros. Por cierto, el shebang
#!/bin/sh -
(también puede ser dos guiones, es decir --
) finaliza las opciones de bash, todo lo que sea posterior se tratará como nombres de archivo y argumentos.
El uso del env
comando hace que su script sea portátil y le permite configurar entornos personalizados para su script, por lo tanto, los scripts portátiles deben usar
#!/usr/bin/env bash
O para cualquier idioma como Perl
#!/usr/bin/env perl
Asegúrese de mirar las man
páginas para bash
:
man bash
y env
:
man env
Nota: en Debian y los sistemas basados en Debian, como Ubuntu, sh
están vinculados a dash
not bash
. Como todos los scripts del sistema usan sh
. Esto permite que bash crezca y el sistema se mantenga estable, según Debian.
Además, para mantener la invocación * nix como nunca uso extensiones de archivo en scripts invocados shebang, ya que no puede omitir la extensión de invocación en ejecutables como puede hacerlo en Windows. El comando de archivo puede identificarlo como un script.
/usr/local/bin/bash
en OpenBSD.