web-dev-qa-db-ja.com

異なるタイムゾーンでのCrontabスケジュール

ESTでタスクをスケジュールしたいのですが、実際のタスクをデフォルトのシステムタイムゾーンで実行したいと思います。

これを行う最良の方法は何ですか?

18
DD.

CENTOSバージョンのcronでは、次の行を追加するだけです:CRON_TZ = America/New_York

これにより、ニューヨーク時間に従ってスケジュールが実行されますが、タスクはデフォルトのタイムゾーンで実行されます。

14
DD.

Crontabファイル変数TZ = Some/Whereに設定するだけです。TZを複数回設定して、別々のジョブを別々のタイムゾーンで実行することができます。例えば:

TZ=UTC
* 7 * * * root date | mail root
TZ=CEST
* 7 * * * root date | mail root
TZ=PCT
* 7 * * * root date | mail root

7:00 UTC(またはcronデーモンを実行しているタイムゾーン)では、3つのジョブが実行されますが、それぞれに独自のTZ変数があります。

26
datacompboy

別のTZ環境変数を使用してcronの個別のインスタンスを実行するか、数時間を加算または減算する方法を学ぶことができます。

0
womble