У меня есть следующие простые команды
me@mymachine~$ some_date="2019-09-20 22:02:19"
me@mymachine~$ gdate -d "${some_date} + 24 hours" +"%Y-%m-%d %H:%M:%S"
2019-09-19 19:02:19
Моя начальная дата - 9/20, и когда я добавляю к ней 24 часа, я получаю дату до этого. Я предполагаю, что это что-то делает с часовыми поясами или чем-то еще, но почему бы просто не сохранить тот же (или предположить UTC или что-то в этом роде)
Это в настоящее время работает bash
в Mac
EDIT
Похоже, изменение команды на
gdate -d "${some_date} - 24 hours" +"%Y-%m-%d %H:%M:%S"
дает ожидаемый результат, но этот синтаксис мне кажется странным
РЕДАКТИРОВАТЬ 2 Еще одна дата, которая дает странные результаты
me@mymachine~$ some_date="2019-09-19 01:48:02"
me@mymachine~$ gdate -d "${some_date} - 24 hours"
Thu Sep 19 22:48:02 EDT 2019
Этот пример является верным с точки зрения направления, однако, похоже, что он не добавляет полных 24 часа? Я неправильно понимаю синтаксис gdate?