日付を秒または日に変換

日付を秒または日に変換

日付を日数に変換する必要があります。

date +%s --date "10 March 1990"

637027200

2番目の数字を取得するには。その後、その数を1日の秒数である86400で割った。

date +%s --date "10 March 1990" / 86400

7373

ただし、1970年1月1日より前の日付では機能しません。

1950年から2020年の日付を使用する必要があります。

解決策はありますか?おそらく、1970年1月1日とは異なる日付で新起源の時間をオーバーライドできる日付バイナリがありますか?

ベストアンサー1

エポックの日付は固定されています。 1950年から作業を行う必要があるため、32ビットUnix時間を使用できます。

数値が負の場合でも、ピリオドを2つ追加できます。

1950年から1970年まで+1970年から現在まで:

#Get the current date time timestamp
d1="$(date +%s)"
#Get the timestamp from <date> to 1970 and remove negative sign
d2="$(date +%s --date "10 March 1950" | sed 's/-//g')"
#Perform addition of both timestamps
res="$((d1+d2))"
echo "$res"  # Output 2235228403

おすすめ記事