[Python] Exécuter fichier .bat dans fichier .bat dans python
Grenade24
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
Je cherche à appeler des fichiers .bat exécutables (nécessitant un dossier en argument pour fonctionner) dans un programme python. J'ai donc cherché à utiliser les modules os et subprocess. J'ai ainsi réussi à faire démarrer des fichiers batch simples avec ces lignes :
(les deux codes semblent marcher de la même manière, en exécutant le batch et en affichant directement la sortie de celui-ci)
.
Mon problème intervient lorsque je souhaite exécuter des fichiers .bat appelant à leur tour des fichiers .bat. Lors de l'exécution du fichiermaitre.bat, arrivé à une ligne du type "call fichier1.bat "%1" dans le batch, l'interpréteur python affiche "'fichier1.bat' n'est pas reconnu en tant que commande interne ou externe, un programme ex'cutable ou un fichier de commandes." et continue sans exécuter fichier1.bat.
.
Je ne comprends pas bien pourquoi, je suppose un conflit dans les processus créés dans mon code python, vu que si j'exécute fichiermaitre.bat dans le shell windows, tout se passe bien.
Je n'ai pas créé moi-même les fichiers .bat et je ne souhaite pas les modifier.
Merci d'avance pour votre aide !
Je cherche à appeler des fichiers .bat exécutables (nécessitant un dossier en argument pour fonctionner) dans un programme python. J'ai donc cherché à utiliser les modules os et subprocess. J'ai ainsi réussi à faire démarrer des fichiers batch simples avec ces lignes :
subprocess.call("..\MonChemin\fichier1.bat CheminduDossier/Test1", shell=True)
os.system('..\MonChemin\fichier1.bat CheminduDossier/Test1')
(les deux codes semblent marcher de la même manière, en exécutant le batch et en affichant directement la sortie de celui-ci)
.
Mon problème intervient lorsque je souhaite exécuter des fichiers .bat appelant à leur tour des fichiers .bat. Lors de l'exécution du fichiermaitre.bat, arrivé à une ligne du type "call fichier1.bat "%1" dans le batch, l'interpréteur python affiche "'fichier1.bat' n'est pas reconnu en tant que commande interne ou externe, un programme ex'cutable ou un fichier de commandes." et continue sans exécuter fichier1.bat.
.
Je ne comprends pas bien pourquoi, je suppose un conflit dans les processus créés dans mon code python, vu que si j'exécute fichiermaitre.bat dans le shell windows, tout se passe bien.
Je n'ai pas créé moi-même les fichiers .bat et je ne souhaite pas les modifier.
Merci d'avance pour votre aide !
A voir également:
- [Python] Exécuter fichier .bat dans fichier .bat dans python
- Creer un fichier .bat - Guide
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide