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 .