クローンプランを作成するのに役立ちますか?スケジュールは次の場所でコマンドを実行する必要があります。
- 毎月最初の週の最後の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