日付/時刻を現在のJDNに変換

日付/時刻を現在のJDNに変換

日付/時刻をユリウス暦日(YY-ddd形式ではなく紀元前4713年1月1日以降の日数、ここでdddは現在の年の日数)に変換したいと思います。これはgndateに組み込まれていないようですが、rightとincantationを使用するとdate簡単になると思いますbc

追加のパッケージをインストールしなくても、シェルプロンプトまたはbash機能を使用してこれを実行できることを願っています。 Gnu-dateやsed awk bcなどの標準ツール

ベストアンサー1

OLD_JULIAN_VAR=$(date -u -d 1840-12-31 +%s)

TODAY_DATE=`date --date="$odate" +"%Y-%m-%d"`
TODAY_DATE_VAR=`date -u -d "$TODAY_DATE" +"%s"`
export JULIAN_DATE=$((((TODAY_DATE_VAR - OLD_JULIAN_VAR))/86400))
echo $JULIAN_DATE

非常に正確

[(date in sec)-(1840-12-31 in sec)]/86400 

おすすめ記事