在 unix/linux 中将秒数转换为 1901 年 1 月 1 日以来的日期

发布于 2024-10-02 11:24:51 字数 119 浏览 5 评论 0原文

我正在尝试将以秒为单位的时间戳从 1901 年 1 月 1 日转换为当前日期。

例如, 时间戳 3465468225 转换为 2010 年的日期。有谁知道在 unix/linux 中执行此操作的方法吗?谢谢。

im trying to convert a time stamp in seconds from Jan 01 1901 to the current date.

for example,
time stamp 3465468225 translate to a date in 2010. does anyone know of a way to do this in unix/linux? thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

感悟人生的甜 2024-10-09 11:24:51

R 中,它就像这样简单:

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

这对 C 级调用使用适当的包装器 gmtime () / localtime() 加上通过 strftime() 进行时间格式化。

In R, it is as simple as this:

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

This uses appropriate wrappers around C-level calls gmtime() / localtime() plus time formatting via strftime().

中二柚 2024-10-09 11:24:51

在 GNU 和 POSIX 系统上,您可以使用自纪元 (1970-01-01 00:00:00 UTC) 以来的秒数获取日期字符串,如下所示:

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

您应该自己处理自 1901 年 1 月 1 日以来的偏移量。

On GNU and POSIX systems you can obtain the date string using seconds since Epoch (1970-01-01 00:00:00 UTC) as:

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

You should handle the offset since Jan 01 1901 yourself.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文