11-Scheduling

Le scheduler, planificateur de tâches en français, permet d’exécuter une action à un moment défini.

Dans l’exemple ci-dessous, l’ouverture du fichier test-classe.csv avec notepad.exe, doit s’exécuter une fois à 17h

../_images/Capt-sched-test33.PNG

Pour pouvoir ajouter une tâche dans le planificateur avec un script, il y a plusieurs étapes à effectuer

La première est de définir une action (action)

../_images/Capt-sched-action.PNG

Pour le code, on doit définir une variable

$action=New-ScheduledTaskAction -Execute 'notepad.exe' -Argument 's:\test-classe.csv'

Si on veut lancer un script, on utilisera powershell.exe et le script avec son chemin comme argument

La seconde est de définir le déclencheur (trigger)

../_images/Capt-sched-declencheur.PNG

Pour le code, on définit aussi une variable

$trigger=New-ScheduledTaskTrigger -Once -At $hour

Dans cet exemple, la tâche s’exécutera une fois et l’heure d’exécution est définie dans les paramètres du script $hour

Enfin pour la troisième étape, il faut enregistrer la tâche avec les variables définies

../_images/Capt-sched-general.PNG

Pour le code, on utilise la cmdlet Register-ScheduledTask pour l’enregistrement de la tâche

Register-ScheduledTask -Action $action -Trigger $trigger -TaskName $taskName -TaskPath $taskPath -Description $desc

Le nom, le chemin et la description sont définis dans des variables, mais on pourrait aussi les passer en paramètres!

Dans ISE, le lancement du script donne

../_images/Capt-lancement-script-test33.PNG