GNU/Linux >> Tutoriels Linux >  >> Linux

Exécutez des scripts Python sans appeler explicitement `python`

Il y a deux choses que vous devez 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 indiquer :

    #!/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, précisez simplement dans le shebang :

    #!/usr/bin/python2.7
    

Vous pouvez maintenant taper :

    ./script.py

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

    script.py

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

    path/to/script.py

sinon.


Sous Linux, vous pouvez simplement utiliser le hashbang (alias shebang). Ajouter 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.

Vous devrez également rendre le script exécutable

chmod +x script[.py] 

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é.


Linux
  1. MySQLdump sans mot de passe dans cronjob

  2. Comment faire fonctionner un script Python comme un service ou un démon sous Linux

  3. Comment exécuter le script en tant qu'autre utilisateur sans mot de passe ?

  4. Comment installer un script pour qu'il s'exécute n'importe où à partir de la ligne de commande ?

  5. Comment faire fonctionner le script Python en tant que service ?

Comment exécuter des scripts Python

Comment exécuter un script Python en PHP

Comment exécuter un script bash

Script au démarrage ?

Comment exécuter un script python sur un terminal (ubuntu) ?

Les commandes d'un script bash s'exécutent-elles en parallèle ou l'une après l'autre ?