如果我只安装了“日期”命令,如何在 Windows 的 MSYS+MinGW 上更改时区?这里没有“tzconfig”或“tzselect”。
当我尝试 $date --set="Apr 01 23:08 UTC+04:00" 我收到 19:08 GMT+0 结果。
这对我来说非常重要,因为“make”命令总是给我关于将来修改的文件的错误。
我遇到过同样的问题。我的时区是 CET (GMT+1)。
我通过设置环境变量 TZ 解决了这个问题,如下所示:
export TZ=CET-1CEST
在设置变量之前,我有:
(dos提示)
c:\>time
Huidige tijd: 17:08:32,40
(msys 外壳)
$ date
Mon Oct 25 15:08:54 GMT 2010
设置 TZ=CET-1CEST 后变为:
(dos提示)
c:\>time
Huidige tijd: 17:14:30,80
(msys 外壳)
$ export TZ=CET-1CEST
$ date
Mon Oct 25 17:15:05 CEST 2010
此变量中的字段是
请注意,第一个和第三个字段仅用于在日期字符串中显示。如果您愿意,您也可以将其设置为 FOO 和 BAR,它是执行实际时间修改的第二个(也可以是第四个)字段。
该参数可以使用更多字段来定义 DST 何时开始和结束。如果您想了解更多有关它的信息,请参阅此页面。
这是从我的电脑复制和粘贴的。启动 Windows cmd.exe 提示符 - 然后:
d:\Users\NeilB>time
The current time is: 20:59:27.68
Enter the new time: 21:59
然后切换到 MSYS bash shell:
[neilb@GONERIL NeilB]$ date
Thu Apr 1 21:59:31 GMTDT 2010
注意时间变了。这也适用于控制面板。
我遇到了同样的时区问题。我最好的方法是使用 : date --date="4 hours ago" ,其中 -4h 是我的时区...它可以为我的东西加上时间戳,但我不确定它是否对我有任何帮助“制作”...
作为记录,除了 Geert 的出色回答之外,以下是我添加到我的 ~/.bash_profile 中的内容,居住在法国:
export TZ=CET-1CEST-2
而且效果很好。