at

O at agenda tarefas de forma semelhante ao cron com uma interface que permite a utilização de linguagem natural nos agendamentos. Sua principal aplicação é no uso de tarefas que sejam disparadas somente uma vez. Uma característica deste programa é a execução de aplicativos que tenham passado de seu horário de execução, muito útil se o computador é desligado com freqüência ou quando ocorre uma interrupção no fornecimento de energia.

Para utilizar o at, instale-o com o comando: apt-get install at. O próximo passo é criar os arquivos /etc/at.allow e at.deny. Estes arquivos são organizados no formato de um usuário por linha. Durante o agendamento, é verificado primeiro o arquivo at.allow (lista de quem pode executar comandos) e depois o at.deny (lista de quem NÃO pode executar comandos). Caso eles não existam, o agendamento de comandos é permitido a todos os usuários.

Abaixo seguem exemplos do agendamento através do comando at:

echo ls | at 10am today

Executa as 10 da manha de hoje

echo ls | at 10:05 today

Executa as 10:05 da manha de hoje

echo ls | at 10:05pm today

Executa as 10:05 da noite de hoje

echo ls | at 22:05 today

Executa as 22:05 da noite de hoje

echo ls | at 14:50 tomorrow

Executa o comando amanhã as 14:50 da tarde

echo ls | at midnight

Executa o comando a meia noite de hoje

echo ls | at midnight tomorrow

Executa o comando a meia noite de amanhã

echo ls | at noon

Executa o comando de tarde (meio dia).

at -f comandos.txt teatime

Executa os comandos especificados no arquivo "comandos.txt" no horário do café da tarde (as 16:00 horas).

at -f comandos.txt +3 minutes

Executa os comandos especificados no arquivo "comandos.txt" daqui a 3 minutos. Também pode ser especificado "hours" ou "days".

at -f comandos.txt tomorrow +3 hours

Executa os comandos especificados no arquivo "comandos.txt" daqui a 3 horas no dia de amanhã. (se agora são 10:00, ela será executada amanhã as 13:00 da tarde).

Todas as tarefas agendadas são armazenadas em arquivos dentro do diretório /var/spool/cron/atjobs. A sintaxe de comandos para gerenciar as tarefas é semelhante aos utilitários do lpd: Para ver as tarefas, digite atq. Para remover uma tarefa, use o comando atrm seguido do número da tarefa obtida pelo atq.