Unixタイムスタンプから5分を引く方法は?

Unixタイムスタンプから5分を引く方法は?

Unix epoch 形式以降の日付がミリ秒単位で表示されます。ここで5分をどのように引き出しますか?

答え1

タイムスタンプが変数にあり、timestampエポック以降のミリ秒単位であるとします。

fiveminutesbefore=$((timestamp - 5 * 60 * 1000))

これは以下を使用します。算術拡張値から60(毎分秒)とバッチ1000(毎秒ミリ秒)のバッチ5を減算すると、timestamp予想時間より5分早くなります。

答え2

5分60秒1000ミリ秒はそれぞれ300000を提供します。

以下を使用して、現在の日付(ミリ秒)を含む変数からこの値を減算できます$(( ))

dd=$(($(date +'%s * 1000 + %-N / 1000000')))
ddmin5=$(($dd - 300000))
echo $ddmin5

ミリ秒は以下から計算されます。この回答

答え3

方法が多すぎます。

fiveminutesbefore=$[$timestamp - 5 * 60 * 1000]

または

fiveminutesbefore=`echo "$timestamp - 5 * 60 * 1000" | bc -l`

または

fiveminutesbefore=`echo "$timestamp" | python -c 'import sys; t=sys.stdin.read(); print int(t) - 5 * 60 * 1000'`

など...

答え4

Solaris sun os マイナス 10 分印刷

dt="$(date +%H:"$(( `date +%M`-10))":%S)"

関連情報