有没有办法为特定时区设置 cronjob?
我的共享主机在美国(弗吉尼亚),我在英国。如果我将 cron 作业设置为每个星期五的 1600 小时执行,那么它将在弗吉尼亚的 1600 时执行。
我想知道我是否可以设置我的 cronjob 以使其了解选择哪个时区。我不太担心夏令时的差异。
我已经询问了我的共享主机提供商,他们说我应该能够在一些 cron ini 文件中设置时区,但我找不到任何文件。
有没有办法为特定时区设置 cronjob?
我的共享主机在美国(弗吉尼亚),我在英国。如果我将 cron 作业设置为每个星期五的 1600 小时执行,那么它将在弗吉尼亚的 1600 时执行。
我想知道我是否可以设置我的 cronjob 以使其了解选择哪个时区。我不太担心夏令时的差异。
我已经询问了我的共享主机提供商,他们说我应该能够在一些 cron ini 文件中设置时区,但我找不到任何文件。
我认为你应该检查
/etc/default/cron
或者只是输入
Crontab cronfile
你应该找到
TZ=UTC
这应该改变(例如 America/New_York)。第二种方式是在 cron 示例中设置的
5 2 3 * * TZ="America/New_York" /do/command > /dev/null 2>&1
您可以使用CRON_TZ
环境变量,摘自man 5 crontab
CentOS 6 服务器:
CRON_TZ
指定特定于 cron 表的时区。用户在指定时区的时间输入所选表时间。进入日志的时间取自本地时区,守护程序在哪里运行。
因此,如果您将其添加到cron
条目的顶部:
CRON_TZ=Europe/London
你应该很好。
在 Ubuntu 18.08 上
host@machine$crontab -e
然后输入
TZ=Asia/Kolkata
注意:-将 Asia/Kolkata 替换为您想要的时区
要扩展 AlexT 的答案:
CRON_TZ="Europe/London"
是答案。
ps 如果有人在这里寻找 GoDaddy 的时区修复程序,我建议将...
export TZ="Europe/London"
...在您的 .bashrc 中,以便您的控制台在您的时区运行。