comment appeler un script shell à partir de code python?
Réponses
Trop de publicités?Le module de sous-processus vous aidera.
Voici un tutoriel décent.
Exemple carrément trivial:
>>> import subprocess
>>> subprocess.call(['./test.sh']) # Thanks @Jim Dennis for suggesting the []
0
>>>
Où test.sh
est un script shell simple et 0
est sa valeur de retour pour cette exécution.
Il y a des façons d'utiliser os.popen()
(obsolète) ou le module entier subprocess
, mais os.system(command)
est l'un des plus faciles.
Sous-processus est bonne, mais certaines personnes comme scriptine mieux. Scriptine a plus haut niveau de l'ensemble de méthodes comme shell.appel(args), chemin d'accès.renommer(new_name) et chemin d'accès.déplacer(src,dst). Scriptine est basé sur les sous-processus et les autres.
Deux inconvénients de scriptine:
- Actuel de la documentation serait plus complet, même si elle est suffisante.
- À la différence des sous-processus, scriptine package n'est pas installé par défaut.