1

I'm trying to specify a timezone for at so I can use it in a bash script and not have to worry about adjusting it twice a year, and getting this error:

at: refusing to create job destined in the past

Where am I going wrong?


What time is it now? (the UK has just gone from BST -> GMT/UTC for the winter)

$ date
Sun 25 Oct 2020 11:00:11 AM GMT

This should be in about 5 minutes...

$ at 11:05 UTC
at: refusing to create job destined in the past

Try the named timezone of the server… (I actually get this with any timezone I can think of - e.g. CET, EST, EDT, CST, PST, PDT, AEST... - the docs in /usr/share/doc/at/timespec just say "time_base timezone_name")

$ at 11:05 GMT
syntax error. Last token seen: G
Garbled time

Finally to demonstrate it works normally without any timezone..

$ at 11:05
warning: commands will be executed using /bin/sh
at>

[...]

at version 3.1.23
Debian 10.6

1 Answer 1

0

Per the comments in this answer, at uses the local time as set by the TZ environment variable. Thus you can do:

For UTC:

TZ=UTC at 11:05

Or for the UK using GMT/BST as applicable:

TZ=Europe/London at 11:05

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .