【问题标题】:convert Calendar date to Julian Date in Unix在 Unix 中将日历日期转换为儒略日期
【发布时间】:2021-12-27 07:21:38
【问题描述】:

我有一个要求。在其中一个源文件中,我将日历日期作为输入,并且在处理文件时它必须转换儒略日期格式。我只需要一个脚本。

例如:日期:2020 年 11 月 10 日 朱利安日期:2020314

【问题讨论】:

    标签: shell ubuntu unix


    【解决方案1】:

    最简单的方法是

    date -d 10-Nov-2020 +%Y%j
    

    但它似乎从 1 开始计数,而不是 0,所以它返回 2020315

    Perl 的Time::Piece 可以用来获取期望值:

    perl -MTime::Piece -lwe '$t = localtime->strptime(shift, "%d-%b-%Y"); print $t->year, $t->yday' -- 10-Nov-2020
    

    如果您想要 2020000 而不是第一天的 20200,您可能需要 sprintf "%03d", $t->yday 而不仅仅是 $t->yday

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-07-21
      • 2011-03-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-14
      • 1970-01-01
      相关资源
      最近更新 更多