at
executa qualquer comando que deveria ter sido executado antes de você acordar o computador, mas pode levar alguns minutos para fazer isso. Não importa se você deu uma data específica , como você pode testar facilmente:
$ sudo date -s "2017-12-15 23:57:00"
$ at 23:59 17-12-15 <<<'echo executed >at_test'
job 1 at Fri Dec 15 23:59:00 2017
# suspend, wake after four minutes
$ date
Sat Dec 16 00:01:17 CET 2017
$ cat <at_test || atq
bash: /home/dessert/at_test: No such file or directory
1 Fri Dec 15 23:59:00 2017 a dessert
# wait a few minutes
$ cat <at_test || atq
executed
Assim, um trabalho que você adiciona usando at 20:00 today
pode muito bem ser executado repentinamente três dias depois, quando você ligar seu computador novamente. Se você quiser evitar isso, você pode verificar o tempo no trabalho em si, como proposto aqui: Como evitar que o atd execute trabalhos anteriores?