Scripter une tâche planifiée sous Windows

Dernière mise a jour 19 Août 2023 a 09:03 pm

Scripter une tâche planifée sous windows ? C’est une action qui peut s’avérer très intéressante notamment si vous avez dans l’idée d’automatiser un traitement particulier ponctuel sur un client windobe.
C’est beaucoup moins bourrin que d’installer votre programme en tant que service ou de le lancer directement au démarrage du pc (d’ailleurs encore faut il que le pc soit redémarrer souvent par l’utilisateur)

Prérequis

  • être sous Windows 7 (sous W10 ca devrait fonctionner aussi mais je n’ai pas eu le temps de tester)
  • Posséder les droits administrateurs  ou runas

L’utilitaire « SCHTASKS.exe »

C’est lui qui va nous permettre de créer une tâche planifiée. On le retrouve dans le dossier « system32″ » de windows.Pour connaitre toutes les options et paramètres de ce programme vous pouvez taper dans une console:

schtasks.exe /?

Ou sinon voici un lien très complet avec des exemples , qui pourront vous inspirer pour créer, supprimer, modifier des tâches planifiées « aux petits oignons ».

Exemple en autoit:

J’ai choisi de vous montrer un exemple avec le langage de script autoit pour changer mais sachez qu’il est possible de faire la même chose en powershell ou en batch avec exactement les mêmes paramètres.

Ici nous allons créer une tâche planifiée dont l’horaire est défini entre 10h00 et 10h59 tous les jours.

code:

$minutes=random(10,59,1)

Run('C:\Windows\System32\schtasks.exe /Create /TN "nomDeMonProgramme" /tr '& "cheminDeMonProgramme" & ' /sc daily /st 10:'& $minutes &':00', @SystemDir,'runas')

 

@ vous de jouer maintenant 😉

2 commentaires sur Scripter une tâche planifiée sous Windows

  1. Bonjour,
    Très intéressante astuce, merci pour le partage…
    …SAUF qu’il y a une « légère » erreur dans votre texte (et 2 fois) à propos de la commande SCHTASKS.exe :

    – d’abord dans ce texte : L’utilitaire « CHSTASK.exe »
    – puis dans l’exemple que vous donnez pour connaitre les paramètres de cette commande : chstask.exe /?

    C’est d’ailleurs en voulant la tester en rentrant « chstask /? » dans une console CMD et après avoir obtenu un beau message d’erreur (et pour cause) du style : « …n’est pas reconnue en tant que commande interne » que je m’en suis aperçu !…

    Le seul endroit où il n’y a pas d’erreur, c’est dans l’autre exemple que vous donnez en bas de page et qui commence par :
    Run(‘C:\Windows\System32\schtasks.exe……

    Cordialement.

    • @PAPYJACK_35 , merci pour ton retour positif.
      Et surtout bien vu pour l’erreur de syntaxe! j’ai été un peu dyslexique sur ce coup là et pour une fois que je ne fais pas du copier/coller :-/
      Sinon pour éviter ce genre de désagrément, il me semble qu’en « tabulant » sur la console le système te propose le bon exe
      Je corrige direct!

Leave a Reply

Votre adresse de messagerie ne sera pas publiée.


*