Cuando uso shebang #!/usr/bin/env python
para ejecutar un script, ¿cómo sabe el sistema qué python
¿usar? si busco un python
bin ruta en las variables de entorno no encuentro nada.
env | grep -i python
Respuesta aceptada:
El shebang espera que se use una ruta completa al intérprete, por lo que la siguiente sintaxis sería incorrecta:
#!python
Establecer una ruta completa como esta podría funcionar:
#!/usr/local/bin/python
pero no sería portátil ya que python podría estar instalado en /bin
, /opt/python/bin
, o en cualquier otro lugar.
Usando env
#!/usr/bin/env python
es un método que permite una forma portátil de especificar al sistema operativo una ruta completa equivalente a aquella donde python
se encuentra primero en el PATH
.