日付、月の日数を調べる

日付、月の日数を調べる

どうすれば使えるの?日付現在の月と次の月の日数を調べるコマンドはありますか?

答え1

ブルートフォース: 次の 31 日と 62 日を生成し、最大の数字を取得します。

month=$(date +%m)
maxDayThisMonth=$(( for d in {00..31}; do date -d "+$d days" +%m-%d ; done ; ) | grep -Po "(?<=$month-)\d+" | sort -rn | head -1)

nextMonth=$(printf "%02d" $(( ($month+1) % 12 )) )
maxDayNextMonth=$(( for d in {01..62}; do date -d "+$d days" +%m-%d ; done ; ) | grep -Po "(?<=$nextMonth-)\d+" | sort -rn | head -1)

grep -Pは GNU 主義ですが、これは Linux 用なので... それ以外の場合は、より一般的なgrep+に置き換えることができますcut

関連情報