Planifier une tâche sous Windows
Je voulais automatiser la sauvegarde de mon PC sous Windows, mais il se trouve que le “Planificateur de tâches” rame et plante au point qu’il est inutilisable. Voici donc comment s’en passer via la ligne de commande (cmd.exe
).
La commande que l’on utilise est schtasks
. Pour voir l’aide de la commande :
schtasks /?
Pour créer une tâche nommée jm.backup et lancer la commande ci-dessous à 13h38 (il était 13h37 à ce moment-là ; ça me permet de tester le bon déroulement de la tâche) :
schtasks /Create /TN jm.backup /TR "'C:\My Program Files\cygwin\bin\bash.exe' -l -c '/home/jm/snapshot.sh daily'" /SC ONCE /ST 13:38
Pour relancer manuellement la tâche :
schtasks /Run /TN jm.backup
Pour voir tous les paramètres de la tâche :
schtasks /Query /TN jm.backup /FO list /V
Pour recréer la tâche avec une répétition quotidienne à 13h (l’effet de la commande /Change
est différent, bizarrement) :
schtasks /Create /TN jm.backup /TR "'C:\My Program Files\cygwin\bin\bash.exe' -l -c '/home/jm/snapshot.sh daily'" /SC DAILY /ST 13:00 /F
Pour désactiver la tâche (/ENABLE
pour réactiver) :
schtasks /Change /TN jm.backup /DISABLE
Pour supprimer la tâche :
schtasks /Delete /TN jm.backup
NB : schtasks
ne propose pas toutes les options, comme permettre l’exécution d’une tâche lorsque l’ordinateur est sur batterie. Pour cela il faut sortir le fichier XML de la tâche, l’éditer puis l’importer :
schtasks /Query /TN jm.backup /XML >jm.xml ... (on édite jm.xml) schtasks /Create /TN jm.backup /XML jm.xml /F