GNU/Linux >> Tutoriels Linux >  >> Linux

Convertir une date ISO en secondes depuis l'époque dans Linux bash

C'est plus facile si vous installez gdate pour traiter les chaînes de date qui ont des fuseaux horaires avec une précision de l'ordre de la nanoseconde

install coreutils et vous obtiendrez gdate le long

sur mac brew install coreutils

gdate --date="2010-10-02T09:35:58.203Z" +%s%N

Ceci est particulièrement utile lors de l'insertion de la valeur de la série chronologique dans influxdb

dans un script shell variable = $(gdate --date="2010-10-02T09:35:58.203Z" +%s%N)

echo $variable

Avec la date GNU (du paquet GNU coreutils), spécifiez la date à analyser avec -d et secondes depuis l'époque avec %s

$ date -d"2014-02-14T12:30" +%s
1392381000

Notez que cela interprétera la date à analyser comme étant dans votre fuseau horaire local . Si vous voulez date pour utiliser un fuseau horaire spécifique, il faut le préciser, soit via la variable TZ (qui change le fuseau horaire par défaut pour date ), ou dans la chaîne de date. Pour UTC :

$ TZ=UTC date -d"2014-02-14T12:30" +%s
1392381000

ou dans la chaîne, selon ISO 8601 :

$ date -d"2014-02-14T12:30Z" +%s
1392381000

Voir ISO 8601 sur Wikipedia pour savoir comment spécifier d'autres fuseaux horaires dans la chaîne de date.


Linux
  1. Linux – Comment trouver la date de création du fichier ?

  2. Convertir les formats de date en bash

  3. Obtenir des secondes depuis l'époque sous Linux

  4. Comment obtenir la date/heure de création du fichier dans Bash/Debian ?

  5. Bash :calcule le temps écoulé entre deux horodatages

Comment utiliser la commande de date dans les scripts bash sous Linux

Comment trouver la date et l'heure d'installation du système d'exploitation Linux

11 Exemples de commandes de date Linux utiles

Comment définir la date et l'heure sous Linux

Linux date Exemples de commandes

Comment changer la date, l'heure et le fuseau horaire dans Linux Mint 20