- PR -

crontabの設定について

投稿者投稿内容
ゆいな
ベテラン
会議室デビュー日: 2006/01/19
投稿数: 89
投稿日時: 2006-02-09 13:22
お世話になります。
crontabの設定について教えてください。

以下の要件を満たすことが可能かを教えてください。
可能な場合は、crontabの記述内容を教えてください。

@毎月第2日曜日の3:30にクーロンでシェルを実行したい。
A毎月第3日曜日の3:30にクーロンでシェルを実行したい。
B偶数の月(2、4、6月..)の第2日曜日の3:30にクーロンでシェルを実行したい。
C奇数の月(1、3、5月..)の第2日曜日の3:30にクーロンでシェルを実行したい。
せん
ぬし
会議室デビュー日: 2002/03/04
投稿数: 397
投稿日時: 2006-02-09 15:04
第何何曜日という指定は、crontab の設定だけでは出来ないとおもいます。

シェルスクリプト内に実行された日付けが第何何曜日なのか?
を判断する処理を加えてはいけないのでしょうか?

もしくは、実際に動かしたいスクリプトを実行するスクリプトを
別に用意して、crontab からそのスクリプトを呼ぶ様にし、
そのスクリプト内で実際に動かしたいスクリプトの条件に合致するか
どうかを判断する、とか。
ゆいな
ベテラン
会議室デビュー日: 2006/01/19
投稿数: 89
投稿日時: 2006-02-09 15:17
お世話になります。
動かしてはないのですが、以下の設定で
要件を満たすことはできるような気がしています。

> @毎月第2日曜日の3:30にクーロンでシェルを実行したい。
30 3 8-14 * 0 /aaa/bbb/ccc.sh

> A毎月第3日曜日の3:30にクーロンでシェルを実行したい。
30 3 15-21 * 0 /aaa/bbb/ccc.sh

> B偶数の月(2、4、6月..)の第2日曜日の3:30にクーロンでシェルを実行したい。
30 3 8-14 2,4,6,8,10,12 0 /aaa/bbb/ccc.sh

> C奇数の月(1、3、5月..)の第2日曜日の3:30にクーロンでシェルを実行したい。
30 3 15-21 2,4,6,8,10,12 0 /aaa/bbb/ccc.sh

Mattun
ぬし
会議室デビュー日: 2004/08/10
投稿数: 1391
投稿日時: 2006-02-09 15:21
引用:

シェルスクリプト内に実行された日付けが第何何曜日なのか?
を判断する処理を加えてはいけないのでしょうか?


・cronで毎週日曜にスケジュールする
・cronで偶数月を指定する(2-12/2)
・cronで奇数月を指定する(1-11/2)

・シェルスクリプト内で、日付が8-14だったら第二日曜と判断して実行する
・シェルスクリプト内で、日付が15-21だったら第三日曜と判断して実行する

って感じですかね。
_________________
Mattun
Microsoft MVP for Directory Services
(Oct 2006-Sep 2007)
Mattun
ぬし
会議室デビュー日: 2004/08/10
投稿数: 1391
投稿日時: 2006-02-09 15:23
引用:

> @毎月第2日曜日の3:30にクーロンでシェルを実行したい。
30 3 8-14 * 0 /aaa/bbb/ccc.sh


それだと8〜14日すべてで実行されませんか?
_________________
Mattun
Microsoft MVP for Directory Services
(Oct 2006-Sep 2007)
せん
ぬし
会議室デビュー日: 2002/03/04
投稿数: 397
投稿日時: 2006-02-09 15:29
なるほど、勉強になりました。

引用:

Mattunさんの書き込み (2006-02-09 15:23) より:
引用:

> @毎月第2日曜日の3:30にクーロンでシェルを実行したい。
30 3 8-14 * 0 /aaa/bbb/ccc.sh


それだと8〜14日すべてで実行されませんか?




あいや、最後の「0」で日曜が条件に入りますので、全てでは動かないと
おもいます。
Mattun
ぬし
会議室デビュー日: 2004/08/10
投稿数: 1391
投稿日時: 2006-02-09 15:30
引用:

あいや、最後の「0」で日曜が条件に入りますので、全てでは動かないと
おもいます。



あ、そういやそうですね・・・失礼しました。
_________________
Mattun
Microsoft MVP for Directory Services
(Oct 2006-Sep 2007)
水都
大ベテラン
会議室デビュー日: 2004/07/22
投稿数: 111
投稿日時: 2006-02-09 15:48
以下、JM crontab.5 (section 5, cron)より抜粋
−−−−−−−−−−−−−−−
注意: コマンド実行の日は 2 つのフィールドで指定できる --- 月内日および曜日である。もし両方のフィールドが制限指定 (* 以外) であると、 いずれかのフィールドが現在時刻と合った時にコマンドが実行される。例えば、
``30 4 1,15 * 5''
とすると、毎月 1 日と 15 日および毎週金曜日の午前 4:30 にコマンドが実行される。
−−−−−−−−−−−−−−−

これはMattunさんの懸念通りになるように読めるのですが

スキルアップ/キャリアアップ(JOB@IT)