Linux

CentOS 4.8

at(1)


AT

NOM

at, batch, atq, atrm − Mémoriser, examiner ou supprimer des jobs à exécuter ultérieurement.

SYNOPSIS

at [-V] [-q fichier] [-f fichier] [-mldbv] HEURE
at -c
commande [commande...]
atq
[-V] [-q fichier] [-v]
atrm
[-V] commande [commande...]
batch
[-V] [-q fichier] [-f fichier] [-mv] [HEURE]

DESCRIPTION

at et batch lisent, depuis l’entrée standard, ou depuis un fichier, des commandes qu’ils exécuteront ultérieurement, en utilisant /bin/sh.

at

lance les commandes indiquées à une heure précise.

atq

affiche la liste des commandes en attente d’exécution, sauf si l’appelant est le Super−Utilisateur. Dans ce dernier cas, atq affiche la liste des travaux en attente pour tous les utilisateurs.

atrm

efface les travaux en attente.

batch

exécute les commandes indiquées lorsque la charge système le permet, c’est à dire lorsque la charge du processeur, obtenue depuis le fichier /proc/loadavg descend en dessous de 1,5 par défaut, ou en dessous d’une valeur mentionnée explicitement durant l’invocation de atrun.

At permet d’indiquer l’heure de lancement de manière assez complexe.

Il accepte des spécifications de la forme HHMM ou HH:MM pour exécuter un travail à une heure donnée de la journée en cours (ou du lendemain si l’heure mentionnée est déjà dépassée). 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. (NDT : C’est sympa de penser aux gens qui notent le jour avant le mois :-)

On peut indiquer une heure de la forme now(maintenant) + nombre d’unités, où les unités peuvent être minutes, hours, 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.

Par exemple, pour lancer une commande à 16 heures, 3 jours plus tard, on peut indiquer at 4pm + 3 days, pour lancer le travail à 10 heures du matin le 31 Juillet, il faut invoquer at 10am Jul 31 et pour lancer une commande à 1 heure du matin le lendemain, effectuez at 1am tomorrow.

Aussi bien at que batch lisent les commandes à mémoriser depuis l’entrée standard, ou dans le fichier indiqué par l’option -f. Le répertoire de travail, l’environnement (sauf pour les variables TERM, DISPLAY et _) ainsi que le umask sont mémorisés au moment de l’invocation. Une commande at - ou batch - invoquée depuis un shell obtenu par su(1) mémorisera l’U-ID en cours. L’appelant recevra par courrier (mail) les messages écrits sur les flux de sortie standard et d’erreur standard, s’il y en a. Le courrier sera envoyé en utilisant la commande /bin/mail. Si at est invoquée depuis un shell obtenu par su(1), le courrier sera envoyé à l’utilisateur correspondant au login.

Le Super-Utilisateur peut toujours employer ces commandes. Pour les autres utilisateurs, les permissions sont déterminées par les fichiers /etc/at.allow et /etc/at.deny.

Si le fichier /etc/at.allow existe, seuls les utilisateurs dont les noms sont mentionnés dans ce fichier peuvent utiliser at.

Si /etc/at.allow n’existe pas, at vérifie si /etc/at.deny existe, et tous les utilisateurs non-mentionnés dans ce fichier ont le droit d’invoquer at.

Si aucun de ces deux fichiers n’existe, seul le Super-utilisateur a le droit d’appeler at.

Un fichier /etc/at.deny vide signifie que tous les utilisateurs ont le droit d’appeler ces commandes, c’est la configuration par défaut.

OPTIONS

-V

Afficher un numéro de version sur la sortie d’erreur standard.

−q file

Utiliser la file d’attente mentionnée. Une file est désignée par une lettre unique, dans l’intervalle a jusqu’à z, et A jusqu’à Z. La file c est la file d’attente par défaut pour at tandis que la file E est celle par défaut pour batch. Plus les files ont une lettre importante, plus les travaux seront exécutés avec une valeur de gentillesse (voir nice(1)) élevée. Si un travail est enregistré dans une file avec une lettre majuscule, il sera transmis à batch à l’heure indiquée. Si l’on invoque atq avec un nom de file spécifique, il ne montrera que les travaux en attente dans cette file.

−m

Envoyer un courrier à l’utilisateur lorsque le travail est terminé, même s’il n’a rien écrit sur ses flux de sortie.

−f fichier

Lire la commande à exécuter dans le fichier et non pas sur l’entrée standard.

−l

Est un alias pour atq.

−d

Est un alias pour atrm.

−b

Est un alias pour batch.

−v

Pour atq, afficher les travaux terminés mais pas encore effacés de la file. Pour les autres, afficher les heures de lancement programmées.

−c

Imprimer sur la sortie standard les travaux mentionnés sur la ligne de commande.

FICHIERS

/var/spool/at
/var/spool/at/spool
/proc/loadavg
/etc/utmp
/etc/at.allow
/etc/at.deny

VOIR AUSSI

cron(1), nice(1), sh(1), umask(2), atrun(8)

BOGUES

Sous Linux, batch est tributaire d’un système de fichiers de type proc monté sur le répertoire /proc.

Si le fichier /etc/utmp n’est pas disponible, ou est endommagé, ou si l’utilisateur n’est pas connecté lorsque at est invoquée, le courrier est envoyé a l’U-ID correspondant à la variable d’environnement LOGNAME. Si celle-ci est indéfinie ou vide, l’U-ID courant est utilisé par défaut.

At et batch, tels qu’ils sont implémentés actuellement, ne sont pas fiables lorsqu’il y a une situation de manque de ressources systèmes. Si c’est régulièrement le cas sur votre site, vous devriez vous orienter vers un autre système de lancements différés, comme nqs.

AUTEURS

At a été écrit principalement par Thomas Koenig, ig25@rz.uni-karlsruhe.de. Les routines d’analyse des dates et heures sont de David Parsons, orc@pell.chi.il.us.

TRADUCTION

Christophe Blaess, 1997.


at(1)