Automatización de tareas. AT
A diferencia de cron. Las tareas encomendadas a at solamente se ejecutarán una vez.
Como se ha visto en la nota anterior, las tareas a ejecutar por el demonio atd solamente se van a realizar una vez y no se volverán a ejecutar a menos que volvamos a ejecutar el comando para programarlas.
at es un conjunto de programas los cuales se detallan a continuación:
La instalación de at en el sistema (Ubuntu) se realizará con el siguiente comando:
Ejemplo de utilización
En el siguiente ejemplo vamos a dejar programado para dentro de cinco minutos un borrado de todos los archivos (no directorios) del directorio /tmp. Para ello ejecutaremos el comando «at now +5 min»:
warning: commands will be executed using /bin/sh
at> rm /tmp/*
at>
job 3 at Fri Dec 20 09:00:00 2013
Una vez ejecutamos este comando at, el sistema nos va a pedir comandos hasta que tecleemos CTRL+D (EOT). En ese momento el sistema deja programado el trabajo con su identificador correspondiente (job 3) y nos avisa cuando se va a ejecutar (job 3 at Fri Dec 20 09:00:00 2013).
El siguiente paso a realizar es listar los trabajos pendientes con el comando atq:
3 Fri Dec 20 09:00:00 2013 a morenoperezjc
morenoperezjc@morenoperezjc-K53SD:~$
Podemos ver que la tarea 3 está pendiente de ejecución y la ha lanzado el usuario morenoperezjc.
Si se quiere eliminar la tarea número 3 bastará ejecutar el comando atrm con el parámetro 3 y se eliminará de la cola de tareas a realizar:
morenoperezjc@morenoperezjc-K53SD:~$
Para verificar que se ha borrado la tarea, nuevamente se vuelve a ejecutar el comando atq:
morenoperezjc@morenoperezjc-K53SD:~$
Se puede observar cómo la tarea 3 ha desaparecido de la cola de tareas a realizar.
Si queremos conocer en profundidad cómo funciona la orden at, la ayuda o man nos puede ser de utilidad:
AT(1) AT(1)
NAME
at, batch, atq, atrm – queue, examine or delete jobs for later execu‐
tion
SYNOPSIS
……..
Ficheros y permisos
Existen dos ficheros que permiten regular la utilización del comando at y son los siguientes:
Sintaxis de utilización
El formato de utilización es el siguiente:
A esta hora se le puede añadir un número seguido de su unidad (minutes, hours, days o weeks)
También se pueden utilizar valores relativos como now, midnight, noon, teatime, today o tomorrow.
o
También se puede dejar un script en ejecución con el siguiente formato de comando:
Ejercicios:
1 Deja programada una tarea para dentro de 5 minutos que elimine de un directorio todos los ficheros con extensión tmp.
2 Deja programada una tarea con at a las 14:20 de hoy para que elimine los ficheros del directorio descargas de tu sistema.
3 Impide que tu usuario pueda ejecutar tareas programadas con at utilizando el fichero deny y prueba a programar una tarea cualquiera. Verifica que el sistema le impide dejar programada una tarea.