Bonjour,
J'aimerai savoir si crontab peut faire office de 'tâche planifiée' style windows? Je souhaite executé un script tout les jours à 05:30. J'ai tenté crontab, mais je n'ai pas tout saisi...
Merci pour vos retours.
Version imprimable
Bonjour,
J'aimerai savoir si crontab peut faire office de 'tâche planifiée' style windows? Je souhaite executé un script tout les jours à 05:30. J'ai tenté crontab, mais je n'ai pas tout saisi...
Merci pour vos retours.
Bonjour,
Oui Crontab est fait pour ça. mais si vous avez des difficultés sur ce sujet le forum le plus approprié est celui de Linux.
Sinon voici un lien expliquant comment utiliser Crontab -> https://www.linuxtricks.fr/wiki/cron...teur-de-taches
je l'ai vue mais je tourne sous Windows...
J'ai fait ça mais rien ne se passe... il écrit dans mon fichier autolog.txt
Code:
1
2
3
4
5 from crontab import CronTab cron = CronTab(user=True) job = cron.new(command='U:\_Developpement\PYTHON\test.exe') job.minute.every(1) cron.write('autolog.txt')
Je ne connaissais pas le module crontab python.
en regardant la doc je vois qu'il y a une ligne de code pour lancer le job :
avez-vous essayé celle-ci pour lancer votre cron ?Code:
1
2 job.run()
oui mais une erreur est retournée..
Citation:
Traceback (most recent call last):
File "U:\_Developpement\PYTHON\Autostartup.py", line 7, in <module>
job.run()
File "C:\Python_3.7\lib\site-packages\crontab.py", line 741, in run
(out, err) = open_pipe(shell, '-c', self.command, env=env).communicate()
File "C:\Python_3.7\lib\site-packages\crontab.py", line 189, in open_pipe
return sp.Popen(args, stdout=sp.PIPE, stderr=sp.PIPE, env=env)
File "C:\Python_3.7\lib\subprocess.py", line 756, in __init__
restore_signals, start_new_session)
File "C:\Python_3.7\lib\subprocess.py", line 1155, in _execute_child
startupinfo)
FileNotFoundError: [WinError 2] Le fichier spécifié est introuvable
Bonjour,
J'ai trouvé quelque chose de plus simple:
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 import schedule import time, datetime import win32api print("Start of application: " +str(datetime.datetime.now())) def job(): print("Job started at "+str(datetime.datetime.now())) win32api.WinExec('test.exe') schedule.every(1).minutes.do(job) #schedule.every().hour.do(job) #schedule.every().day.at("10:30").do(job) while 1: schedule.run_pending() time.sleep(1)
Salut,
Sauf que si vous redémarrez la machine, il faut relancer tout çà à la main.
L'avantage d'un "cron" et du planificateur de taches de Windows, c'est de renseigner une base de données qui survivra aux redémarrages. Ce qui permettra de lancer les taches au bon moment...
- W
Oui mais si je le mets dans le dossier Startup, ça doit fonctionner :-)
Le dossier "Startup" est là pour faire des choses au démarrage histoire de retrouver le même environnement de travail. Ce sont des scripts ou des programmes qui se terminent rapidement.
Là vous lancez un programme qui tourne en 24/24 au lieu d'un code qui s'exécute une fois tous les.... et qui recommence depuis un état initial bien maîtrisé.
Vous faites ce que vous voulez mais regardez les questions que vous allez vous posez tous les jours pour connaître l'état "fonctionnel" de votre truc... et comment vous allez devoir mettre des réponses en face.
- W