Al iniciar un script, tenemos que poner el shebang, representado por #!
. Al ejecutar el script, nuestro sistema operativo leerá shebang y ejecutará el lenguaje de programación que se especifica allí y la ruta en que está.
Bash=no siempre está en =/bin
, sobretodo en sistemas que no son Linux como por ejemplo OpenBSD, que en este caso está situado en /usr/local/bin
, ya que está instalado como paquete opcional.
Si estas totalmente seguro que bash está en la ruta que especificas, no hay ningún problema, pero si quieres que tu script sea más universal, te permita ejecutar distintas versiones de bash o simplemente, evitar problemas, =env=es mejor opción.
#!/usr/bin/env bash
buscará la ruta donde esté bash para ejecutar el script. Del mismo modo, en otros leguajes de programación como python, sucede igual ** #!/usr/bin/env python
o perl = #!/usr/bin/env perl =
Si escribes en tu shell env
, mostrará todas las variables de entorno.
#!/usr/bin/env
siempre está situado en la misma ruta en todos los sistemas operativos.
OS | env path |
---|---|
OpenBSD | /usr/bin/env |
FreeBSD | /usr/bin/env |
Debian | /usr/bin/env |
Ubuntu | /usr/bin/env |
CentOS | /usr/bin/env |
macOS | /usr/bin/env |
SUSE | /usr/bin/env |
RHEL | /usr/bin/env |
NetBSD | /usr/bin/env |
Solaris | /usr/bin/env |
Publicado por Angel el Saturday 20 November del 2021
También te puede interesar:
Powered by org-bash-blog
Written in OrgMode with Emacs and converted to HTML with Pandoc
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional.