Exécuter une commande en différé avec Linux
Vous devez exécuter une seule fois une commande mais d’ici une heure ou quelques minutes … voici une commande : at elle permet de réaliser cette fonction.
Imaginons vous souhaitez recharger apache (/etc/init.d/apache2/reload) à 22h48 :
root@archimede:~# at 22h48 warning: commands will be executed using /bin/sh at> /etc/init.d/apache2 reload at> job 2 at Sun May 16 22:48:00 2010 |
Vous entrez la commande « at » suivi de l’heure, un prompt vous demandera quelle commande vous voulez exécuter à cette heure (et d’autres commandes si vous en avez) validez par entrée chaque saisie. Une fois terminée appuyez sur Ctrl+D
Informations supplémentaires :
On peut aussi lui fournir l’un des arguments suivants : midnight (minuit), noon (midi), ou teatime (l’heure du thé, soit 16 heures). Il est également possible de fournir un suffixe du type AM (matin), ou PM (après-midi) avec une heure sur un cadran de 12 heures. On peut indiquer le jour de lancement, en précisant une date du type nom-du-mois (en anglais) jour et éventuellement année, ou encore une date du type MMJJAA ou MM/JJ/AA ou JJ.MM.AA. La date doit suivre l’heure. On peut indiquer une heure de la forme now (maintenant) + nombre d’unités, où les unités peuvent être minutes, hours (heures), days (jours), ou weeks (semaines) et on peut également demander à at de déclencher le travail le jour même en ajoutant le suffixe today ou le lendemain en ajoutant tomorrow.
Exemple : ce midi (même commande que précédemment) :
root@archimede:~# at noon warning: commands will be executed using /bin/sh at> /etc/init.d/apache2 reload at> job 2 at Sun May 16 22:48:00 2010 |
Commandes supplémentaires
Vous pouvez utiliser la commande atq pour afficher la liste des opérations programmées :
3 Mon May 17 22:48:00 2010 a root 4 Mon May 17 22:50:00 2010 a root |
La commande atrm permet de supprimer une tâche programmée en la combinant avec son numéro de tâche (obtenu grâce à atq) :
atrm 3 |
Si vous souhaitez planifier des tâches à répétition, lisez cet article : Tâches planifiées avec Linux
[…] Ce billet était mentionné sur Twitter par Minimoi, Minimoi. Minimoi a dit: [BLOG] Exécuter une commande en différé avec Linux – http://tinyurl.com/395dftu […]