毎月第3週の最初と最後の2日間のクローンスケジュール

毎月第3週の最初と最後の2日間のクローンスケジュール

クローンプランを作成するのに役立ちますか?スケジュールは次の場所でコマンドを実行する必要があります。

  • 毎月最初の週の最後の2日
  • 毎月第3週最後の2日

答え1

ISO 8601年の最初の週を 1 月 4 日を含む主として定義します。 「毎月の最初の週」の具体的な定義はないため、同じ「月は> = 4日」の規則を適用することを提案します。

Cronはそれを知らず、「月の最初の週」または「月の3番目の週」の概念がないため、これは直接的には役立ちません。あなたができることは、過去2日間にスクリプトを実行することです。週に

0 1 * * 6,7 /path/to/my/script

その後、日付ベースの計算を実行して(「毎月の最初の週」定義に従って)、スクリプトをすぐに終了するのか、実際に実行するのかを決定します。

上記の「> = 4日」のルールを使用すると、/ bin / shで次のものを使用できます。

d=$(date +%d)
if [ "$d" -ge 3 ] && [ "$d" -le 10 ]; then
    # 1st week
elif [ "$d" -ge 17 ] && [ "$d" -le 24 ]; then
    # 3rd week
else
    exit
fi

関連情報