我有一个要求。在其中一个源文件中,我得到了日历日期作为输入,在处理该文件时,它必须转换儒略日期格式。我只需要一个脚本。
ex:日期:2020年11月10日朱利安日期:2020314
最简单的方法是
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
。