下周一是什么时候?

Zev*_*les 7 version coreutils date

在我的家用电脑(Xubuntu 14.04)上,我有

zev@home:~$ 日期 +%F
2015-10-05

zev@home:~$ date +%F -d "下周一"
2015-10-12

而在工作中(Red Hat 5.11),我有

zev@work:~$ 日期 +%F
2015-10-05

zev@work:~$ date +%F -d "下周一"
2015-10-05

(请注意,今天是星期一。)我最初的猜测是,对该短语的不同解释next Monday是由于系统具有不同版本的 coreutil date

zev@home:~$ 日期 --version | 头-2
日期 (GNU coreutils) 8.21
版权所有 (C) 2013 Free Software Foundation, Inc.

zev@work:~$ 日期 --version | 头-2
日期 (GNU coreutils) 5.97
版权所有 (C) 2006 Free Software Foundation, Inc.

我的问题是:

  • date程序版本的差异是唯一的原因,还是系统中是否有其他因素会影响其对日期字符串的解释?

  • 在不运行命令直接检查的情况下,我如何知道系统是否会有一种解释?如果唯一影响结果的是 的版本date,那么根据这个 unix.SE 线程(X 的哪个版本引入了特性 Y?),我应该能够在date程序的变更日志中找到哪个版本引入了新行为,但我在这里找不到任何类似的东西(也许我只是很困惑)。

meu*_*euh 5

我做了rpm -qfl /bin/date并查看了更改日志的文件列表,并找到/usr/share/doc/coreutils/NEWS了以下段落:

  • 7.4 版 (2009-05-07) [稳定] 中的显着变化

    Bug修复。date -d 'next mon' 在星期一运行时,现在打印未来 7 天的日期而不是当前日期。在一周的同一天运行时,任何其他星期几名称都相同。[这个错误似乎出现在“开始”中。]