Почему я всегда получаю дополнительно один день с разницей в bash? - PullRequest
0 голосов
/ 24 февраля 2020

Я пытаюсь вычислить секунды между датой с этого момента, однако, всегда добавляю один день при добавлении секунд с этого момента.

echo $(($(date -ud "2020-03-15 19:13" +'%s') - $(date +'%s')))

На момент публикации результат равен 1744204

Используя этот веб-сайт для проверки, я получаю 16 марта, а не 15 марта, как ожидалось. Есть идеи почему?

1 Ответ

2 голосов
/ 24 февраля 2020

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

Первый результат команды показывает метку времени в UT C, а второй показывает метку времени с использованием часового пояса system.

Вот разница:

$ date -ud "2020-03-15 19:13" +'%s'
1584299580

С UT C -3 в моей системе:

$ date -d "2020-03-15 19:13" +'%s'
1584310380

Я надеюсь, что это поможет вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...