結論
0 0 28-31 * * /usr/bin/test $(date -d '+1 day' +%d) -eq 1 && hoge.sh
なぜそれで動くのか?
# date -d '+1 day' +%d 23 # date Sat May 22 02:59:45 UTC 2021
要は日付を1日たして日付情報だけを抜き出しています。
この値が1の時だけ後続のコマンドを実行するんですね。
これができるなら月初めや年末もできそう。
0 0 28-31 * * /usr/bin/test $(date -d '+1 day' +%d) -eq 1 && hoge.sh
# date -d '+1 day' +%d 23 # date Sat May 22 02:59:45 UTC 2021
要は日付を1日たして日付情報だけを抜き出しています。
この値が1の時だけ後続のコマンドを実行するんですね。
これができるなら月初めや年末もできそう。