時間別変数の追加

時間別変数の追加

次のように時間変数に3時間を追加しようとしています。

today3AM=$(date -d "today 3AM" "+%Y%m%d%H" -u)

today6AM=$(date -d "${today3AM} + 3 hours" -u)

echo $today6AM

返品時に何かが間違っています。

Wed Oct 3 03:00:00 UTC 202001

答え1

3AM変数を日付に戻さないでください。

ただこの方法を書いてください

$ today3AM=$(date -d "today 3AM" -u)
$ today6AM=$(date -d "today 3AM + 3 hours" -u)
$ echo $today3AM
Fri Jan 10 03:00:00 UTC 2020
$ echo $today6AM
Fri Jan 10 06:00:00 UTC 2020
$

答え2

2番目のコマンドはフォーマットがわかりませんtoday3AMtoday6AM次のようなものを使用するには

today=$(date -d "today 3AM" -u)
echo $today
Fri Jan 10 03:00:00 UTC 2020
today6am=$(date -u -d "${today} +3 hours")
echo $today6am
Fri Jan 10 06:00:00 UTC 2020

today3amこれで状況に合わせて変更できます。

関連情報