Я ищу прямые команды Unix, чтобы получить первое воскресенье следующего месяца, первый понедельник следующего месяца, первый вторник следующего месяца, первую среду следующего месяца и т. Д.
Они понадобятся мне в полном формате даты (время не обязательно)
Я могу получить числа, такие как 2, 3, 4 и т. Д. Так как я не хочу только цифры, они мне понадобятся в формате даты (включая день, месяц, год)
$ NEXT_MONTH=`date +'%m %Y' -d 'next month'` $ echo $NEXT_MONTH 04 2017 $ NEXT_SUNDAY=`cal $NEXT_MONTH | awk 'NF==7 && !/^Su/{print $1;exit}'` $ echo $NEXT_SUNDAY 2
Эти даты мне понадобятся для отправки уведомлений в группу электронной почты.
Пример: я мог бы получить первую субботу следующего месяца, как показано ниже.
$ firstofmonth=$(date -d '+1 months' '+%Y%m01')
20170401
$ firstsaturday=$(date -d "$firstofmonth" '+%Y-%m')-$((7 - \
$(date -d "$firstofmonth" '+%u') ))
2017-04-1