Einfacher ist es, wenn Sie gdate
installieren um mit Datumszeichenfolgen umzugehen, die Zeitzonen mit Nanosekunden-Präzision haben
install coreutils
und Sie erhalten gdate
entlang
auf Mac brew install coreutils
gdate --date="2010-10-02T09:35:58.203Z" +%s%N
Dies ist besonders nützlich beim Einfügen des Zeitreihenwerts in influxdb
in einem Shell-Skript variable = $(gdate --date="2010-10-02T09:35:58.203Z" +%s%N)
echo $variable
Geben Sie mit GNU date (aus dem Paket GNU coreutils) das zu parsende Datum mit -d
an und Sekunden seit Epoche mit %s
$ date -d"2014-02-14T12:30" +%s
1392381000
Beachten Sie, dass dadurch das zu parsende Datum als in Ihrer lokalen Zeitzone liegend interpretiert wird . Wenn Sie date
möchten Um eine bestimmte Zeitzone zu verwenden, müssen Sie diese angeben, entweder über die Variable TZ (die die Standardzeitzone für date
ändert ) oder in der Datumszeichenfolge. Für UTC:
$ TZ=UTC date -d"2014-02-14T12:30" +%s
1392381000
oder im String nach ISO 8601:
$ date -d"2014-02-14T12:30Z" +%s
1392381000
Siehe ISO 8601 auf Wikipedia, um zu erfahren, wie andere Zeitzonen in der Datumszeichenfolge angegeben werden.