Crontabでは、アスタリスクを使用してすべての値を意味するか、「*/2」を使用してすべての偶数値を意味します。
すべてのodd値を指定する方法はありますか? (「1 + */2」のようなものは動作しますか?)
Cronのバージョンに応じて、次のことができるはずです(たとえば、何時間も):
1-23/2
Crontab(5)マンページのEXTENSIONSセクションをご覧ください:
Ranges can include "steps", so "1-9/2" is the same as "1,3,5,7,9".
より移植性の高いソリューションを得るには、単純なリストを使用するだけでよいと思われます。
1,3,5,7,9,11,13,15,17,19,21,23
しかし、コマンドを奇数分で呼び出されない場合はすぐに終了するシェルスクリプトでラップする方が簡単かもしれません。
奇数分ごとに:
1-59/2 * * * *
偶数分ごとに:
0-58/2 * * * *
試して
1-23/2
あなたの質問から、私はVixie Cronを仮定しています。これが他のcronで機能するとは思えません。
マニュアルを読むと、「1-23/2」(数時間)でうまくいくでしょう。
5分間隔でもCronieで動作します。
3-58/5 * * * * /home/test/bin/do_some_thing_every_five_minute
私はこれがほぼ10歳であることを知っていますが、2時間ごと、奇数時間の仕事で1-23/2を得るのに苦労していました。
exact奇数時間の精度は必要ないすべてのユーザーにとって。チームのニーズに合った次のことを行いました。
59 */2 * * *
59分に2時間ごとにジョブを実行します。