Как преобразовать определенный формат строки в дату / секунды в сценарии оболочки linux - PullRequest
0 голосов
/ 25 апреля 2018

Мне нужно преобразовать строку %y/%m/%d %H:%M:%S (например, 18/04/25 16:04:00) в секунды.

date -d "18/04/25 16:04:00" "+%s" приводит к неверному формату, хотя date -d "04/25/2018 16:04:00" "+%s" дает правильный результат.

Можно ли указать формат строки (например, 18/04/25 16:04:00), как я могу сделать в OS X, date -j -f '%y/%m/%d %H:%M:%S' '18/04/25 16:04:00' +'%s'?

1 Ответ

0 голосов
/ 25 апреля 2018

Вы можете добавить век в начале вашей строки, чтобы она работала в gnu date:

dt="18/04/25 16:04:00"
date -d "$(date '+%C')$dt" '+%s'

1524686640

$(date '+%C') вернет текущий век, т.е. 20

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