50 votes

Exécuter des scripts sans invoquer explicitement `Python`

J'utilise Debian Linux.

Je me demandais s'il existait un moyen de configurer l'exécution de tous Python scripts dans le terminal en tapant script.py (au lieu de python script.py ).

67voto

Oliver Points 125

Il y a deux choses à faire :

  • Assurez-vous que le fichier est exécutable : chmod +x script.py
  • Utilisez un shebang pour indiquer au noyau quel interpréteur utiliser. La première ligne du script doit être la suivante :

    #!/usr/bin/python

    Cela suppose que votre script s'exécutera avec le Python par défaut. Si vous avez besoin d'une version spécifique, spécifiez-la dans le shebang :

    #!/usr/bin/python2.7

Vous pouvez maintenant taper :

    ./script.py

si le script se trouve dans votre répertoire courant, ou :

    script.py

si l'emplacement du script se trouve dans votre PATH, ou :

    path/to/script.py

autrement.

34voto

tomp Points 1170

Sous Linux, vous pouvez simplement utiliser le hashbang (ou shebang). Ajoutez la ligne

#!/usr/bin/python

si vous souhaitez exécuter l'interpréteur Python par défaut.

#!/path/to/python[x.x]

pour utiliser une version spécifique, ou

#!/usr/bin/env python

Si vous voulez que l'environnement trouve Python pour vous.

Il vous sera également demandé de rendre le script exécutable.

chmod +x script[.py]

5voto

Cory Klein Points 1392

Utiliser :

#!/usr/bin/env python

Cela garantira que le Python que l'utilisateur s'attend à utiliser sera celui qui exécute le script. Ceci est particulièrement important si l'utilisateur utilise virtualenv pour avoir une version spécifique de Python dans un environnement donné.

1voto

Suraj Bora Points 11

Utilisez une ligne shebang au début de votre script comme ci-dessous :

!/usr/bin/Python

Mettez à jour la version de Python sur laquelle vous souhaitez exécuter le script. Par exemple, pour Python 3.6, le fichier

!/usr/bin/python3.6

pour l'interprète par défaut

!/usr/bin/Python

Remarque : assurez-vous que script dispose de l'autorisation d'exécution.

1voto

WMRamadan Points 111

Ajoutez la ligne suivante au début du script pour lancer l'interpréteur Python par défaut :

#!/usr/bin/python

Pour spécifier la version de Python, ajoutez le numéro de version après Python :

#!/usr/bin/python2.7

Si vous disposez d'une version locale de Python et que vous souhaitez l'utiliser :

#!/usr/bin/env python

Vous devez ensuite rendre votre script exécutable en exécutant la commande suivante :

chmod +x script.py

Pour exécuter le script :

./script.py

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X