С помощью date -d
можно отобразить будущую или следующую дату
$ date -d "next mon"
Mon May 13 00:00:00 CST 2019
$ date -d "mon"
Mon May 13 00:00:00 CST 2019
К сожалению, он не смог отобразить предыдущий день недели
$ date -d "previous Monday"
date: invalid date ‘previous Monday’
Как можно отобразить предыдущий день недели в строке -format?
Используйте last
вместо previous
:
$ date -d "last Monday"
Mon May 6 00:00:00 BST 2019
Это задокументировано в info date
, а конкретное упоминание last
содержится в "29.6 Пункты дня недели « раздел (спасибо @Jos и @hobbs за его поиск):
Число может предшествовать элементу дня недели, чтобы двигаться вперед на дополнительные недели. Лучше всего использовать это выражение как «третий понедельник». В этом контексте «последний день» или «следующий день» также приемлемы; они перемещаются за неделю до или после того дня, который этот день будет представлять сам по себе.
BLOCKQUOTE>