Невозможно увеличить дату с форматом ddmmyyyy в bash - PullRequest
0 голосов
/ 05 июня 2018

Почему это:

date +%d%m%Y -d "01052018 + 1 day"

ошибка w /

date: invalid date `02062018 + 1 day'

в CentOS 7.3 в CEST?Я пробовал несколько вариантов

date +%d%m%Y -d "$date 12:00 + 1 day"
date +%d%m%Y -ud "$date UTC + 1 day"

безрезультатно.Чего мне не хватает?

1 Ответ

0 голосов
/ 05 июня 2018

GNU date не поддерживает формат даты ddmmyyyy типа, как вы можете видеть из Чистые числа в строках даты , вам нужно изменить его на тип ггггммдд чтобы заставить его работать

date -d "20180501 + 1 day"

или с UTC как

date -ud "20180501 UTC + 1 day"

Если ваша исходная строка из переменной и вам нужно обойти это, чтобы сделать ее совместимой с форматом выше,сделать это, используя расширение параметра

rawdate="02062018"
compatDate="${rawdate:4}${rawdate:2:2}${rawdate:0:2}"

и использовать переменную compatDate в команде date

date -d "${compatDate} + 1 day"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...