date
Wie kann ich bei einem Datum und einer Uhrzeit in einem Format, das nicht von erkannt wird , date
Datum und Uhrzeit erkennen?
Beispielsweise:
$ date -d "09SEP2012:23:58:46"
date: invalid date `09SEP2012:23:58:46'
$ date -d "09SEP2012:23:58:46" --magic-option "ddMMMYYY:hh:mm:ss"
Sun Sep 9 23:58:46 MDT 2012
Gibt --magic-option
es Wenn nicht, gibt es eine elegantere Möglichkeit, dies zu lösen, als sed
die Eingabe in eine wohlgeformte Datumszeichenfolge umzuwandeln?
Antworten:
Weder POSIX noch GNU Datum haben
--magic-option
. FreeBSD ruft es auf-f
(mit einer Syntaxdate
, die der von Ihnen vorgeschlagenen Syntax für das Ausgabeformat ähnelt ).Ihr Datum steht kurz davor, vom GNU-Datum erkannt zu werden: Alles, was Sie brauchen, ist das Ersetzen des Doppelpunkts, der das Datum von der Uhrzeit durch ein Leerzeichen trennt.
quelle
01/02/03
:Ich habe eine Reihe von Werkzeugen ( Dateutils ) geschrieben, die Datums- und Zeitangaben skriptfreundlicher behandeln. Ihre magische Option gibt es
--input-format|-i
zB:Das Ausgabeformat wird
dconv
zwar nicht direkt unterstütztdate
(es gibt keine KonferenzenTZ
oder ähnliches in der Umgebung), es gibt jedoch ein Toolstrptime
in dateutils , das den%Z
Formatbezeichner unterstützt.quelle