LinuxPedia

Wiki libre et indépendant dédié à GNU-Linux et BSD.

Outils pour utilisateurs

Outils du site


expert:planificateur_de_tache_at

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

expert:planificateur_de_tache_at [2018/11/17 13:53] (Version actuelle)
Ligne 1: Ligne 1:
 +====== Planificateur de tache at ======
 +//**Origine : [[http://​www.linuxpourlesnuls.ch|Linux Pour Les Nuls]]**//​\\
 +//**Auteur : Lonewolf**//​\\
 +//**Date : 19 février 2007**//\\
  
 +Bonjour,
 +
 +Nous allons parler aujourd'​hui d'une planification de tâche en mode console grâce à la commande **at.**
 +
 +Cette commande sert à planifier l'​exécution d'une tâche qui sera lancée à l'​instant ou vous l'​aurez choisis. **Attention car toutefois elle ne le sera qu'une seule fois.**
 +
 +Si votre ordinateur est éteint au moment ou la tâche est programmée,​ celle ci s'​exécutera au démarrage de votre machine.
 +
 +**at** ajoute la tâche à une file d'​attente des tâches planifiées,​ que vous trouverez dans le répertoire **/​var/​spool/​at**. Pour connaitre les tâches planifiées,​ il suffit de taper en mode console :
 +   ​[loup@localhost ~]$ atq
 +   ​14 ​     2007-02-19 15:00 a loup
 +
 +Ici vous voyez le numéro de la tâche : le **14** ; la date d'​exécution : le **19 février 2007** ; et l'​heure d'​exécution : **15h00**.
 +
 +Voyons comment nous servir de **at**. at est gérée par atd, le démon de at. Le démon atd doit donc être activée pour que la commande fonctionne. Vous pouvez le vérifier en tapant sous root : 
 +
 +   ​[root@localhost loup]# service atd status
 +
 +Si atd est activé, vous obtiendez ceci (selon les versions, cela peut légèrement différer) :
 +
 +    atd (pid 4912) is running...
 +
 +Si le service est bien activé, voyons comment indiquer à crond le moment ou la tâche programmée devra être exécutée.
 +
 +Vous pouvez par exemple donner à at une date précise comme l'​exemple ci dessus. Si vous choisissez par exemple le 19 février 2007 à 15h00 :
 +
 +    at 15:00 19.02.2007
 +
 +mais vous pouvez donner également une date relative, c'est à dire définie par rapport à l'​instant présent comme par exemple : "​demain à 15h00" :
 +
 +    at 3pm tomorrow
 +
 +**tomorrow** signifie "​demain"​ en anglais - **pm** signifie "​après-midi"​ et - **am** "​matin"​.
 +
 +Si vous voulez exécuter une tâche aujourd'​hui à 15h00 vous pouvez également utiliser la commande courte :
 +
 +    at 3pm
 +
 +ou encore dans une méthode française tout aussi simple :
 +
 +    at 15:00
 +
 +Il y a donc plusieurs manières d'​utiliser la commande **at** pour la même tâche. Dans les deux derniers cas, si vous utilisez la commande **at** en retard sur l'​heure (par exemple à 15h10 pour une commande prévue pour 15h00) celle ci s'​exécutera le lendemain à 15h00.
 +
 +Dans le cas ou vous voudriez plutôt utiliser la commande at pour exprimer une tâche qui devra s'​exécuter dans 4h00 par exemple, alors qu'il est 15h00, vous utiliserez alors la syntaxe suivante :
 +
 +    at 15:00 + 4 hours
 +
 +Mais vous pouvez définir également ce type de commande par rapport à l'​instant présent.
 +Disons que vous voulez que cette tâche s'​exécute dans 50 minutes, il vous faudra alors écrire :
 +
 +    at now + 50 minutes ​  
 +
 +Les mots clés les plus utilisés sont : **tomorrow** pour demain, **now** pour maintenant, **midnigth** pour minuit, **noon** pour midi, **teatime** (l'​heure du thé) pour 16h00 etc
 +
 +La liste des options valides est disponible dans les fichiers ​ **/​usr/​share/​doc/​at->​no_de_version>/​timespec**.
 +
 +Voyons maintenant comment procéder pour ajouter un job dans la file générée par at :
 +
 +     - taper la commande **at** suivie de l'​heure et/ou de la date,
 +     - appuyer sur la touche Entrée
 +     - donner la liste des commandes à exécuter, à raison d'une par ligne (en terminant chaque ligne par Entrée)
 +     - lorsque vous avez finit, appuyer simultanément sur les touches ​ et  et vous obtiendrez quelques choses comme ceci :
 +
 +     at heure date 
 +     ​warning :commands will be executed using (in order) a) $SHELL b) login shell c) /bin/sh
 +     ​at>​command_1
 +     ​at>​commande_2
 +     ​at>​ CTRL + d
 +     ​job ​ numéro at date heure
 +
 +Pour voir les tâches, utilisez la commande : 
 +
 +     atq
 +
 +Pour supprimer une tâche, utilisez la commande **atrm** suivie du numéro de la tâche à supprimer :
 +
 +     atrm 14
 +
 +Voila, j'​espère que ce tuto vous a plut et n'​hésitez pas à poser des questions si vous avez des interrogations non satisfaites.
 +
 +----
 +//​[[http://​www.linuxpedia.fr/​doku.php/​expertold|Retour à la page Expert]]//
expert/planificateur_de_tache_at.txt · Dernière modification: 2018/11/17 13:53 (modification externe)