Tareas programadas no persistentes con el comando at

Hoy vamos a ver el comando at, una gran utilidad para crear tareas programadas no persistentes, o lo que es lo mismo, una tarea de un solo uso, sin necesidad por ejemplo de usar cron, script… con at lo podemos hacer de manera rápida y fácil.

Para poder utilizar este comando, primero tendremos que instalarlo con apt install at en caso de tener Debian o Ubuntu.

Tareas programadas no persistentes con el comando at install

Como ayuda tendremos el man de at, donde podremos ver y consultar todas las opciones disponibles, modo de uso…

Tareas programadas no persistentes con el comando at man

Una tarea muy habitual que me suele tocar, es reiniciar algún servidor a horas que no afecte a la producción, por eso con at lo podemos hacer escribiendo at y seguido la hora que queremos que se ejecute, por ejemplo at 22:54.

También podemos configurar para que una tarea se ejecute en 2 días y a una hora especifica… como he comentado, en el man os da mas información.

Nos mostrará un warning diciendo que se ejecutará usando /bin/bash, seguido escribiremos el comando que queremos ejecutar, en este caso shutdown -r, para que reinicie el servidor a las 22:54.

Tareas programadas no persistentes con el comando at comando

En la imagen anterior vemos como da un numero de job, este numero nos servirá para consultar y saber cuales son las tareas programadas o para borrar alguna tarea.

Estas tareas, las podemos consultar con el comando atq

Con el comando atrm, podemos borrar tareas, de esta manera atrm 3, donde 3 seria el numero de job.

Una vez llegue la hora programada, el servidor se reiniciará. NOTA: he puesto shutdown -r sin opciones, por lo que hay que tener en cuenta que hay que sumarle un minuto mas a la programación, ya que cuando no le ponemos opciones a shutdown -r , nos da 1 minuto de «cortesia» por si queremos cancelar.

Saludos y espero que os sirva.