Linux 纪元时间Linux 纪元时间Linux 纪元时间Linux 纪元时间
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

Linux 纪元时间

纪元时间是 Unix 和 Linux 系统上使用的约定,许多应用程序依赖它来计算日期和其他类似函数之间的时间。某些 Linux 命令(例如 date 和 perl)内置了纪元选项。纪元表示自 1970 年 1 月 1 日起经过的秒数。

如果你想知道的话,这个日期并没有什么特别的。这只是不久前商定的一个任意日期,只是为了方便而使用。在本教程中,我们将向您展示如何将日期和时间与 Unix 纪元时间相互转换。

在本教程中您将学习:

  • 什么是 Unix 纪元时间?

  • 如何将日期与 Unix 纪元时间相互转换

Linux 纪元时间是多少?

如上所述,纪元时间可以用作参考基准,即 1970 年 1 月 1 日的 00:00:00 UTC。从该日期开始,应用程序可以根据该事件之前或之后发生的秒数来分配时间戳。

这些时间戳非常适合计算,但对人们来说几乎没有用处。机器需要知道 Thu 02 Jun 2016 12:59:59 PM UTC 会转换为 1464872399。因此,纪元时间是您更有可能在 Bash 脚本或程序代码中找到的函数。

大纪元时间转换示例

请参阅以下命令,您可以在自己的终端中运行这些命令,以将日期和时间与 Unix 纪元时间相互转换。

  1. 要将时间戳转换为人类可读的日期,请使用以下命令语法并用您自己的时间戳代替本示例中的时间戳。请注意,这将返回 UTC 时间。

    
    $ date -ud @1464872499
    Thu 02 Jun 2016 01:01:39 PM UTC
    
  2. 如果您想获取系统当前配置的时区的时间,可以省略 -u 选项。

    
    $ date -d @1464872499
    Thu 02 Jun 2016 09:01:39 AM EDT
    
  3. 要将日期转换为纪元时间戳,请使用以下语法。

    
    $ date -d '06/02/2016 09:01:39' +"%s"
    1464872499
    

    请注意,-d 选项要求您指定美国格式 (MM/DD/YYY) 的日期。该命令还假设我们正在使用当前时区,因为尚未指定 -u 选项。

  4. 您也可以使用这种格式。可以随意省略星期几(在本例中为星期四),也可以不省略。请注意,这里不需要 -u 选项,因为明确提到了 UTC。

    
    $ date -d 'Thu 02 Jun 2016 01:01:39 PM UTC' +"%s"
    1464872499
    
  5. 要从我们的系统检索当前纪元时间,请使用以下date命令。

    
    $ date +"%s"
    1653511975
    
  6. 我们还可以在 Perl 中利用纪元时间。以下命令将纪元日期转换为人类可读的日期。

    
    $ perl -e 'print scalar(localtime(1284763671)), "\n"'
    Fri Sep 17 18:47:51 2010
    

结束语

在本教程中,您了解了纪元时间以及如何在 Linux 系统上使用它。您还了解了如何将人类可读的日期转换为纪元时间,以及如何将纪元秒转换为人类可读的日期和时间。了解这一点将允许您在两个日期之间执行计算以及从 Linux 命令行执行类似的函数。

©2015-2025 艾丽卡 support@alaica.com