Date

為什麼date忽略TZ環境變數?

  • October 8, 2019

在 Ubuntu 18.04 上,我有以下行為date

$ date --version | head -n1
date (GNU coreutils) 8.28
$ date
Вт окт  8 13:18:18 MSK 2019
$ TZ=UTC date
Вт окт  8 10:18:23 UTC 2019

到現在為止還挺好。但現在我試圖在 Raspbian 9 上做同樣的事情:

$ date --version | head -n1
date (GNU coreutils) 8.26
$ date
Tue Oct  8 13:18:50 MSK 2019
$ TZ=UTC date
Tue Oct  8 13:18:51 MSK 2019

dateRaspbian 版本忽略TZ環境變數的原因可能是什麼?

我可以想到兩個可能的原因:

1.) 文件/usr/share/zoneinfo/UTC在您的 Raspbian 9 上不存在或已損壞,因此glibc無法實現 TZ 變數設置並回退到系統預設時區,

2.) 您可能有一個先前配置的 TZ 變數已被標記為只讀,因此您更改它的嘗試不會生效。

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