Command-Line

如何向前/向後移動系統時鐘時間?

  • October 11, 2018

我知道用於設置特定時間和/或日期的命令,但找不到相對於目前時間移動時間的命令。

將時間向前/向後移動 x 秒/分鐘/小時的命令是什麼?(可能還有幾天/幾個月/幾年?)

設置系統時間的命令是date。您需要是 root 才能設置系統時間。date將時間設置為給定時間,而不是目前時間的相對量,因為後一種行為將毫無意義。date您可以建構一個命令,通過對 的輸出進行計算並將其回饋給,以相對量修改目前時間date,例如(在非嵌入式 Linux 上)

date $(date +%m%d%H%M%Y.%S -d '1 hour ago')

請注意,如果您正在執行諸如 NTP 之類的計時系統,則像這樣更改時鐘會使它感到困惑。先停下來。

執行date設置系統時間,而不是硬體時鐘。Linux下,執行hwclock --systohc將系統時間複製到硬體時鐘;這是在乾淨關機時自動完成的。

如果您想查看不同時區的時間,請忘記所有這些並設置所需的時區。Linux下,執行tzselect設置系統時區。要在不同的時區執行程序,請設置TZ環境變數,例如

export TZ=Asia/Tokyo
emacs

如果你想執行一個程序,讓它相信時間與實際不同,那就在程序下執行它faketime

faketime '1 hour ago' date

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