Apparence
Uubu.fr

Les systèmes Linux, l’open source, les réseaux, l’interopérabilité, etc.
« Il vaut mieux viser la perfection et la manquer que viser l’imperfection et l’atteindre. » (Bertrand Arthur William RUSSEL)
22 mai 2010

Linux           Planification des tâches


at

at, atq, atrm, batch

Exécute des commandes à un instant définis

   at et batch lisent les commandes sur l'entrée standard ou un fichier spécifié, et sont exécutées à un instant définis, en utilisant /bin/sh.

at exécute les commandes à un instant spécifié
atq liste les jobs en attente de l'utilisateur. Si l'utilisateur est root, affiche tous les jobs. Le format de sortie est un job par ligne (job, numéro, date, heure, queue et user).
atrm Supprime des jobs, spécifié par leur numéro.
batch exécute des commandes quand les niveaux de charge système le permettent ; quand la charge moyenne est en dessous de 1.5, ou la valeur spécifié dans l'invocation de atd.

   at permet des spécifications de temps complexe, étendant le standard POSIX.2. Il accepte le temps sous la forme HH:MM pour lancer un job à une heure spécifique de la journée. Vous pouvez aussi spécifier midnight, noon ou teatime (4pm). Vous pouvez spécifier l'heure du jour avec le préfixe AM ou PM. Vous pouvez spécifier le jour en donnant une date sous la forme month day et optionnellement year, ou en donnant une date sous la forme MMDDYY ou MM/DD/YY ou MM.DD.YY. La spécification d'une date DOIT suivre la spécification de l'heure du jour. Vous pouvez aussi donner le temps comme now + count time-units, où time-units peut être minutes, hours, days ou weeks et vous pouvez dire à at de lancer le job aujourd'hui en suffixant le temps avec today et demain par tomorrow.

   Pour at et batch les commandes sont lues depuis l'entrée standard ou le fichier spécifié avec l'option -f. Le répertoire de travail (excepté pour les variables TERM, DISPLAY et _) et le umask sont retenus depuis l'heure d'invocation. Un at - ou batch - invoqué depuis un shell su(1) retient le userid courant. L'utilisateur recevra un email de la sortie standard et l'erreur standard de ses commandes. Le mail sera envoyé en utilisant /usr/lib/sendmail.

   Le superuser peut utiliser ces commandes dans tous les cas, pour les autres, la permission d'utiliser at est déterminé par les fichiers /etc/at.allow et /etc/at.deny

   si /etc/at.allow existe, seul les noms d'utilisateurs mentionnés sont autorisés à utiliser at. Si /etc/at.allow et /etc/at.deny exsitent, tous les noms d'utilisateur non mentionnés est autorisé à utiliser at. Si aucun des 2 fichiers n'existe, seul root peut utiliser at. Si /etc/at.deny est vide, tous les utilisateurs peuvent utiliser at.

OPTIONS

-q queue Utiliser la queue spécifiée. Une désignation de queue consiste d'une simple lettre de a à z et A à Z. la queue a est le défaut pour at et b est le défaut pour batch. Les queues avec des lettres supérieurs augmente le niveau de nice. La queue spécial "=" est réservée pour les jobs en cours d'exécution.

           Si un job est envoyé à une queue désigné avec une lettre majuscule, le job est traité s'il était envoyé à batch au moment du job. Une fois le temps atteint, les règles de traitement des jobs s'appliquent. Si une queue spécifique est donné à atq, il affiche uniquement les jobs en attente dans cette queue.

-m Envoie un mail à l'utilisateur quand le job est terminé, même s'il n'y a pas de sortie.
-f file Lit les jobs depuis le fichier spécifié
-t time lance le job au temps spécifié, donné au format [[CC]YY]MMDDhhmm[.ss]
-l est un alias pour atq
-d est un alias pour atrm
-v Affiche l'heure 'exécution du job avant de le lire, affiché au format "Thu Feb 20 14:50:00 1997"
-c cat les jobs listé sur la ligne de commande sur la sortie standard.

Exemples

lancer un job dans à 16h dans 3 jours:
at 4pm + 3 days
lancer un job à 10heures le 31 juillet:
at 10am Jul 31
lancer un job à 1 heure du matin demain:
at 1am tomorrow