Date

調整“日期”命令以減去三個小時

  • May 16, 2020

在 bash 腳本中,我有以下 3 行:

D=`date -u +%Y%m%d`
H=`date -u +%H`
RUNTIME="${D}_${H}00"

我需要RUNTIME調整到比目前時間早 3 小時。所以這主要涉及編輯H,但也D因為當天可能會在當天的前幾個小時內向後移動。如何修改所有這些以減去 3 小時?謝謝。

如果你使用datefromcoreutils你可以這樣做:

D=`date -u '+%Y%m%d' -d '-3 hours'`
H=`date -u '+%H' -d '-3 hours'`
RUNTIME="${D}_${H}00"

-d選項允許您指定除現在以外的日期,它支持小時、天等的加法/減法。

D另外,H除了創建之外,您還需要RUNTIME嗎?如果沒有,你可以這樣做:

RUNTIME=`date -u '+%Y%m%d_%H00' -d '-3 hours'`

引用自:https://unix.stackexchange.com/questions/583912