Wann ist nächster Montag?

7

Auf meinem Heimcomputer (Xubuntu 14.04) habe ich

zev @ home: ~ $ date +% F.
2015-10-05

zev @ home: ~ $ date +% F -d "nächsten Montag"
2015-10-12

Bei der Arbeit (Red Hat 5.11) habe ich

zev @ work: ~ $ date +% F.
2015-10-05

zev @ work: ~ $ date +% F -d "nächsten Montag"
2015-10-05

(Beachten Sie, dass heute Montag ist.) Meine anfängliche Vermutung war, dass die unterschiedlichen Interpretationen des Ausdrucks darauf zurückzuführen next Mondaysind, dass die Systeme unterschiedliche Versionen des Coreutils haben date:

zev @ home: ~ $ date --version | Kopf -2
Datum (GNU Coreutils) 8.21
Copyright (C) 2013 Freie Software Foundation, Inc.

zev @ work: ~ $ date --version | Kopf -2
Datum (GNU Coreutils) 5.97
Copyright (C) 2006 Freie Software Foundation, Inc.

Meine Fragen sind:

  • Ist der Unterschied in den Versionen des dateProgramms die einzige Ursache, oder gibt es noch etwas an einem System, das die Interpretation von Datumszeichenfolgen beeinflusst?

  • Wie kann ich wissen, ob ein System die eine oder die andere Interpretation hat, ohne die Befehle zur direkten Überprüfung auszuführen? Wenn das einzige, was das Ergebnis beeinflusst, die Version von ist date, sollte ich gemäß diesem unix.SE-Thread ( Welche Version von X hat Feature Y eingeführt? ) In einem Änderungsprotokoll für das dateProgramm finden können, welche Version das neue Verhalten eingeführt hat. aber ich kann so etwas aus der Ferne hier nicht finden (vielleicht bin ich nur verwirrt).

Zev Chonoles
quelle
Könnten Sie die älteren Coreutils vorübergehend auf Ihrem Heimcomputer installieren, um sie zu testen?
Wildcard

Antworten:

5

Ich habe rpm -qfl /bin/datedie Liste der Dateien nach einem Änderungsprotokoll durchsucht und gefunden/usr/share/doc/coreutils/NEWS und den folgenden Absatz gefunden:

  • Bemerkenswerte Änderungen in Release 7.4 (2009-05-07) [stabil]

    Fehlerbehebung. Wenn date -d 'next mon' an einem Montag ausgeführt wird, wird jetzt das Datum 7 Tage in der Zukunft und nicht mehr der aktuelle Tag gedruckt. Gleiches gilt für jeden anderen Wochentagsnamen, wenn er am selben Wochentag ausgeführt wird. [Dieser Fehler scheint "am Anfang" vorhanden gewesen zu sein. ]]

meuh
quelle