Executar um job uma vez em um horário específico

1

Estou tentando criar um cron que será executado uma vez em um horário específico.

Para simplificar, como posso criar um cron que será executado às 23h57 e imprimir "Olá" na tela e depois deletar a si mesmo? (Cent OS 5)

    
por JT White 02.01.2012 / 05:48

2 respostas

4

Se você precisar que seja executado apenas uma vez, o cron não é sua ferramenta.

at (1)               - queue, examine or delete jobs for later execution

Por exemplo:

# at 12:57PM
warning: commands will be executed using /bin/sh
at> echo hello
at> <EOT>
job 2 at Mon Jan  2 12:57:00 2012

(Pressione ctrl + d quando terminar de digitar os comandos)

Agendamento relativamente agora

fbh@pinky:~$ at now + 5 min
warning: commands will be executed using /bin/sh
at> echo moo
at> <EOT>
job 5 at Mon Jan  2 06:05:00 2012

E como sempre, leia muito mais sobre como usar essa ferramenta na página do manual para isso.

    
por 02.01.2012 / 05:56
0

Se você usar em , a saída do comando será enviada por e-mail para você. Para enviar o texto para o terminal atual, faça o seguinte:

echo "echo 'hello' > 'tty'" | at 11:57PM
echo "echo 'hello' > 'tty'" | at now + 5 minutes

Observe que quando você usa agora + x minutos , o tempo de execução será arredondado para o minuto anterior.

    
por 02.01.2012 / 06:15

Tags