AT(1)

NOM
at, batch, atq, atrm – Mettre en file d'attente, examiner ou supprimer des commandes à exécuter ultérieurement

SYNOPSIS
at [-V] [-q file] [-f fichier] [-u nom_utilisateur] [-mMlv] spécification_de_temps...
at [-V] [-q file] [-f fichier] [-u nom_utilisateur] [-mMkv] [-t heure]
at -c tâche [...]
atq [-V] [-q file]
at [-rd] tâche [...]
atrm [-V] tâche [...]
batch
at -b

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 pour l'utilisateur appelant, sauf s'il s'agit du superutilisateur ; dans ce cas, toutes les commandes en attente sont listées. Le format de sortie est (une ligne par tâche) : numéro de tâche, date, heure, file et nom d'utilisateur.

atrm
    efface les travaux en attente, identifiés par leur numéro de tâche.

batch
    exécute les commandes indiquées lorsque la charge système le permet, c'est à dire lorsque la charge du processeur descend sous 0,8 ou en dessous d'une valeur mentionnée explicitement dans l'invocation de atd.

At permet d'indiquer l'heure de lancement de manière assez complexe, en extension de la norme POSIX.2. Il accepte des spécifications de la forme 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). 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 MMJJ[SS]AA ou MM/JJ/[SS]AA ou JJ.MM.[SS]AA ou [SS]AA-MM-JJ. La date doit suivre l'heure. On peut aussi 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.

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, exécutez at 1am tomorrow.

Si une tâche est indiquée avec une heure et une date impérative d'exécution dans le passé, la commande sera exécutée dès que possible. Par exemple, s'il est 20 heures et que la commande est at 6pm today, la tâche sera vraisemblablement exécutée à 20 h 05.

/usr/share/doc/at/timespec contient les définitions des spécifications horaires.

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 BASH_VERSINFO, DISPLAY, EUID, GROUPS, SHELLOPTS, TERM, UID et _) ainsi que le umask sont mémorisés au moment de l'invocation. Comme la commande at est actuellement implémentée comme un programme setuid, d'autres variables d'environnement (par exemple LD_LIBRARY_PATH ou LD_PRELOAD) ne sont également pas exportées. Cela pourrait changer dans le futur. Pour remédier à cela, définissez explicitement ces variables dans vos tâches at. Une commande at - ou batch - invoquée depuis un shell obtenu par su(1) mémorisera l'UID en cours. L'appelant recevra par courriel les messages écrits sur les flux de sortie standard et d'erreur standard, s'il y en a. Le courriel sera envoyé en utilisant la commande /usr/bin/sendmail. Si at est invoqué depuis un shell obtenu par su(1), le courriel sera envoyé à l'utilisateur correspondant au login.

Le superutilisateur 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. Consultez at.allow(5) pour plus de précisions.

OPTIONS

-V  Afficher le numéro de version sur la sortie d'erreur standard et quitter avec succès.

-q file
    Utiliser la file d'attente mentionnée. Une file est désignée par une lettre unique, dans l'intervalle de a jusqu'à z et de A jusqu'à Z. La file a est la file d'attente par défaut pour at tandis que la file b 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 politesse (voir nice(1)) élevée. La file spéciale « = » est réservée pour les tâches en cours d'exécution.

Si une tâche est soumise à une file désignée par une lettre majuscule, celle-ci est traitée par batch à l'heure prévue. Une fois l'horaire atteint, les règles de traitement par lots s'appliquent selon une charge moyenne. 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 courriel à l'utilisateur lorsque le travail est terminé, même s'il n'y a rien écrit sur ses flux de sortie.

-M  Ne jamais envoyer de courriel à l'utilisateur.

-u nom_utilisateur
    Envoyer un courriel à nom_utilisateur plutôt qu'à l'utilisateur actuel.

-f fichier
    Lire la commande à exécuter depuis le fichier fichier et non depuis l'entrée standard.

-t heure
    Exécuter la commande à l'heure heure, donnée selon le format [[SS]AA]MMJJhhmm[.ss]

-l  Est un alias pour atq.

-r  Est un alias pour atrm.

-d  Est un alias pour atrm.

-b  Est un alias pour batch.

-v  Afficher les heures de lancement programmées avant de lire la tâche.

Les heures seront affichées avec le format « Thu Feb 20 14:50:00 1997 ».

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

FICHIERS
/var/spool/atd
/var/spool/atd
/proc/loadavg
/var/run/utmp
/etc/at.allow
/etc/at.deny

VOIR AUSSI
at.allow(5), at.deny(5), atd(8), cron(1), nice(1), sh(1), umask(2).

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

Si le fichier /var/run/utmp n'est pas disponible, ou est endommagé, ou si l'utilisateur n'est pas connecté lorsque at est invoquée, le courriel est envoyé à l'UID correspondant à la variable d'environnement LOGNAME. Si celle-ci est indéfinie ou vide, l'UID 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. 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.

AUTEUR
At a été écrit principalement par Thomas Koenig.

TRADUCTION
La traduction française de cette page de manuel a été créée par Julien Cristau <jcristau@debian.org>, Florentin Duneau <fduneau@gmail.com>, David Prévot <david@tilapin.org> et Jean-Pierre Giraud <jean-pierregiraud@neuf.fr> Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 (https://www.gnu.org/licenses/gpl-3.0.html) concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE. Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.