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


18

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

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

回答:


25

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

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


+1はそれを知りませんでした-非常に便利です。
コープス

とても素敵なヒントを+1してください!
ジャンヌピッカライネン

それらをすべて同じタイムゾーンで異なる時間に実行したい!
DD。

AGH、自身がTZ変数を認識して、すでに存在していることをcronデーモン:blogs.oracle.com/chrisg/entry/...
datacompboy

2
環境がOpenSolarisであったことを示す質問には何も表示されません... Vixie cronは、これが機能しないと具体的に述べてます。
ワンブル

14

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

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


デフォルトのタイムゾーンに関するヒントをありがとう。それは例えば、あなたはまた、東部のタイムゾーンで実行するcronジョブをしたい場合は、crontabファイルの各行にTZ変数を追加する必要があります:export TZ=America/New_York; unix_command; next_cmd_in_sequence
Sマイク・

1
単一のcrontabで複数のCRON_TZ設定を使用できることを言及したいだけです-非常に便利です。:)
レスターチャン

0

異なるTZ環境変数でcronの個別のインスタンスを実行するか、数時間の加算または減算を学習することができます。


2
ええ、異なるタイムゾーンで異なる時間に発生する夏時間の変更では、それほど単純ではありません。TZ環境変数は、プロセスが異なるTZで実行されることを意味すると思いましたか?
DD。

はい、異なるTZを持つプロセスはcrondです。
ワンブル

crondサービスを別のTZで実行するにはどうすればよいですか?すみません、私はunix初心者です。
DD。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.