[Python] Execution de deux fichiers .bat
Résolu
Norocbzh
Messages postés
9
Statut
Membre
-
Norocbzh Messages postés 9 Statut Membre -
Norocbzh Messages postés 9 Statut Membre -
Bonjour !
J'ai 2 fichiers .bat
Un qui zippe un repertoire et qui l'envoi dans un autre répertoire, et l'autre qui se connecte a un FTP et envoi le fichier zippé sur le FTP.
Lorsque je lance les deux fichiers .bat séparément, ils marchent tous les deux.
par contre, quand je veux les lancer a la suite, seulement le zipper.bat fonctionne...
Je n'arrive pas a executer l'autre, meme quand je le met en premiere position.
Voici mon code :
Si quelqu'un sait pourquoi ca fait ca ^^
Merci
J'ai 2 fichiers .bat
Un qui zippe un repertoire et qui l'envoi dans un autre répertoire, et l'autre qui se connecte a un FTP et envoi le fichier zippé sur le FTP.
Lorsque je lance les deux fichiers .bat séparément, ils marchent tous les deux.
par contre, quand je veux les lancer a la suite, seulement le zipper.bat fonctionne...
Je n'arrive pas a executer l'autre, meme quand je le met en premiere position.
Voici mon code :
import os try : os.execl(r'C:\Script_ftp\zipper.bat') except Exception ,e : print e try : os.execl(r'C:\Script_ftp\script_ftp_ESGrennes.bat') except Exception, e : print e raw_input('Appuyez sur entree pour quitter le programme...')
Si quelqu'un sait pourquoi ca fait ca ^^
Merci
A voir également:
- Python .bat
- Creer un fichier .bat - Guide
- Bat to exe converter - Télécharger - Édition & Programmation
- Citizen code python avis - Accueil - Outils
- \R python ✓ - Forum Python
- Copy bat ✓ - Forum Programmation
1 réponse
os.execl crées un objet fichier.
Je pense que le fait de le fermer permet de détacher ce processus quand il est fini, sinon ça doit gêner.
Essaie peut être
D'ailleurs os.system devrait être suffisant pour ce que tu veux faire.
Je pense que le fait de le fermer permet de détacher ce processus quand il est fini, sinon ça doit gêner.
Essaie peut être
import os try : p = os.execl(r'C:\Script_ftp\zipper.bat') p.close() except Exception ,e : print e try : p = os.execl(r'C:\Script_ftp\script_ftp_ESGrennes.bat') p.close() except Exception, e : print e raw_input('Appuyez sur entree pour quitter le programme...')
D'ailleurs os.system devrait être suffisant pour ce que tu veux faire.
C'est seulement celui que je met en premier qui va s'executer...
Je vois pas pourquoi :'(
Ca marche avec os.sytem() ! Les 2 .bats se lancent a la suite. Merci bien !
Par contre, il me reste un problème...
A la fin du premier .bat, il faut appuyer sur une touche pour lancer le deuxieme.
C:\Script_ftp>pause
Appuyez sur une touche pour continuer...
et ensuite le deuxieme .bat se lance.
Est il possible de contourner ca pour que les 2 .bat se lancent a suivre ?
(Je dois faire tourner ce script en boucle, il ne faut donc pas d'interventions de la part de l'utilisateur)
Merci
(J'avais oublié qu'il restait un "pause" dans mon .bat ... -_-" )
Merci beacoup !!!!