Когда я пытаюсь получить месяц до последнего с сегодняшнего дня, я запускаю «date --date‘ 2 month ago ».
Но я запускаю эту команду 31 января, она возвращается в декабре.
Я думаю, что это должно вернуться в ноябре.
Вы знаете, как получить месяц до последнего с помощью команды date?
Добавлено в 17:30 (JST):
Если это исчисление даты написано на Python, я буду использовать dateutil, и его выражение будет естественным, как показано ниже:
from datetime import *; from dateutil.relativedelta import *
today = date.today()
twomonthago = today + relativedelta(months=-2)
Итак, мне интересно, как я могу написать так же в оболочке bash.
Добавлено в 18:05 (JST):
Кажется, что не только прошедший месяц, но и обработка в будущем месяце - та же странность.
$ date --date '+1 month'
Fri Mar 2 17:42:37 JST 2012
$ date --date '+2 month'
Sat Mar 31 17:42:56 JST 2012
$ date --date '+3 month'
Tue May 1 17:42:59 JST 2012
Февраль и апрель отсутствуют.