programa linea ejecutar desde cómo consola comandos archivos python bash shell shebang env

linea - ejecutar python en linux



ejecutar el script de python directamente desde la línea de comandos (2)

#!/usr/bin/env python

Puse eso en la parte superior de un guión. He visto que debería hacer que el script se pueda ejecutar desde la línea de comandos sin la necesidad de python programname.py . A menos que malinterprete, debería ser capaz de usar programname.py siempre que tenga la línea arriba en la parte superior del script. ¿Es esto correcto?

No funciona para mí Acabo de recibir un error que indica que tendría que usar python al comienzo de la ''llamada''.


hacer que el archivo sea ejecutable

sudo chmod +x /path/to/file.py

y luego desde el mismo directorio que file.py:

./file.py


Ejecución universal de scripts de Python

Puedes ejecutar universalmente sin el shebang ( #! ) Con

python myscript.py

O casi equivalentemente (coloca el directorio actual en su ruta y ejecuta el módulo llamado myscript ) (preferiblemente, haga esto!) :

python -m myscript

desde la línea de comandos, siempre y cuando tenga Python instalado y en su variable de entorno de ruta (es decir, configurado para ejecutarse con python , que, si está instalado, sería normalmente el caso).

Shebangs ( #! ) Son una cosa de Unix.

El shebang, como lo está usando, normalmente se ejecuta en una plataforma Unix (generalmente Apple o Linux). Windows normalmente requeriría que cygwin use el shebang.

Por lo general, puede establecer de forma predeterminada lo que python está disponible en la ruta del sistema con:

#!/usr/bin/env python

Asumiendo que estás en un Unix, puedes probar otras ubicaciones para tu configuración de python, como:

#!/usr/bin/python

Muddling a través de

Puedes ver qué python estás usando usando el comando unix, así que si quieres ver de dónde viene tu python, usa este comando:

which python

o en Windows (cygwin probablemente pueda ejecutar el shebang):

where python

En Linux / Unix, necesitará ejecuciones permanentes para ejecutar el archivo también, de esa manera. Utilice chmod

chmod +x myscript.py

(chmod también puede aplicar a Cygwin en Windows)

Si no está ejecutando como root, puede requerir sudo , y eso sería

sudo chmod +x myscript.py

Y luego intente ejecutar (dentro del mismo directorio) con

./myscript.py