Shell-Datum "-n Stunden" unterscheidet sich in einigen Situationen mit "vor n Stunden"

9

in der Shell, wenn ich dies drucke

%Vor%

Ich bekomme 2016-11-23 23:00:00. Strange!

wenn ich dies drucke

%Vor%

Ich bekomme 2016-11-23 12:00:00 .

Warum sind sie anders? Was ich denke ist, dass sie beide 2016-11-23 12:00:00 sind.

    
John W.C. Smith 23.11.2016, 06:18
quelle

1 Antwort

4

Dies liegt daran, dass die negative Zahl als Offset zu Ihrer Zeitzone behandelt wird, nicht zur 13:05 . In meiner Zeitzone, MET (eine Stunde östlich von GMT), ist das, was ich bekomme:

%Vor%

Der Zeitzonen-Offset wird normalerweise als vierstellige Zahl angegeben, wie in

%Vor%

aber anscheinend ist Datum (1) auch mit einer -1 zufrieden.

Von der Manpage:

  

DATE ZEICHEN

     

Die --date = STRING ist eine weitgehend frei formatierbare, vom Menschen lesbare Datumszeichenfolge, wie z. B. "Sun, 29 Feb.   2004 16:21:42 -0800 "oder" 2004-02-29 16:21:42 "oder sogar" nächsten Donnerstag ". Eine Datumsstring kann   Elemente enthalten, die Kalenderdatum, Uhrzeit, Zeitzone, Wochentag, relativ anzeigen   Zeit, relatives Datum und Zahlen. Ein leerer String zeigt den Beginn des Tages an.   Das Datumstringformat ist komplexer als es hier leicht dokumentiert ist, aber vollständig ist   beschrieben in der Infodokumentation.

    
Jens 23.11.2016, 07:39
quelle

Tags und Links