Преобразование секунд в дату с 01 января 1901 года в unix/linux

Я пытаюсь преобразовать отметку времени в секундах с 01 января 1901 года до текущей даты.

например, отметка времени 3465468225 переводится на дату в 2010 году. Кто-нибудь знает, как это сделать в unix/linux? благодаря.


person Edwin R    schedule 11.11.2010    source источник
comment
Что вы хотите использовать для преобразования? Перл, С++... и т.д...   -  person prolink007    schedule 11.11.2010


Ответы (2)


В R это так же просто:

> as.POSIXct(3465468225, origin="1901-01-01")
[1] "2010-10-25 15:03:45 CDT"  
>  

При этом используются соответствующие оболочки для вызовов C-уровня gmtime()/localtime() плюс форматирование времени через strftime().

person Dirk Eddelbuettel    schedule 11.11.2010

В системах GNU и POSIX вы можете получить строку даты, используя секунды с начала эпохи (1970-01-01 00:00:00 UTC), как:

$ date --date=@1289495920
Thu Nov 11 12:18:40 EST 2010

Вы должны сами обрабатывать смещение с 01 января 1901 года.

person Diego Torres Milano    schedule 11.11.2010