如何理解unix时间格式?

如何理解unix时间格式?

Unix 时间格式如何工作?例如,下午 3:00 的 Unix 时间为:

Normal time format <----3:00PM = 1402565420----> Unix Time

我怎样才能让它理解时间3:00 PM

答案1

Unix 时间给出为自纪元以来的秒数:自 00:00:00 协调世界时 (UTC) 或 1970 年 1 月 1 日星期四以来经过的秒数(不包括闰秒),

GNUdate命令有一些非常好的功能,允许您在不同的时间格式之间进行转换。这些都解释得很好,man date所以我在这里只给你一些例子:

### "Normal" format
$ date
Thu Jun 12 11:44:23 CEST 2014
### Unix time
$ date +%s
1402566271

要进行转换,您可以date使用标志给出特定日期-d。但是,要获取 Unix 日期,这需要是完整的日期。您无法将 3:00PM 转换为 Unix 时间,因为 Unix 时间指的是整个日期(年、月、日、时间)。例如,要获取 1987 年 9 月 12 日的 Unix 日期,您可以执行以下操作:

$ date -d "3 PM 12 September 1987" +%s
558450000

并将其转换回“正常”日期:

$ date -d "@558450000" 
Sat Sep 12 15:00:00 CEST 1987

相关内容