Qu'est-ce qu'un horodatage Unix ? Un guide clair pour les développeurs

JotTools Team 4 min de lecture
L'outil de ce guide Ouvrir Timestamp Unix

Vous ouvrez un fichier de log, une réponse d’API ou une ligne de base de données et vous trouvez un champ comme 1755432000 là où vous attendiez une date. Ce nombre est un horodatage Unix, l’une des façons les plus courantes pour les ordinateurs de stocker un instant dans le temps. Une fois que vous comprenez ce qu’il représente, il cesse d’être énigmatique et devient l’un des formats de date les plus simples qui soient. Ce guide explique le temps Unix et montre comment le convertir dans les deux sens avec le Convertisseur d’horodatage Unix.

Ce qu’est réellement un horodatage Unix

Un horodatage Unix est le nombre de secondes écoulées depuis un unique moment de référence fixe : minuit le 1er janvier 1970, en UTC. Ce point de référence s’appelle l’époque Unix. Ainsi 0 est l’époque elle-même, 60 correspond à une minute après celle-ci, et 1755432000 représente le nombre de secondes écoulées depuis lors.

Comme il est compté en UTC, un horodatage Unix ne traîne aucun bagage de fuseau horaire qui lui soit propre. Le même nombre signifie le même instant partout sur la planète. Un serveur à Tokyo et un serveur à New York qui enregistrent le même événement stockeront un horodatage identique, même si l’heure locale de l’horloge diffère. Le fuseau horaire n’a d’importance que lorsque vous reconvertissez ce nombre en une date lisible par un humain pour l’afficher.

Pourquoi les systèmes stockent le temps de cette façon

Stocker le temps sous forme d’un simple entier résout une pile de problèmes que créent les dates en texte :

  • La comparaison est triviale. Pour savoir lequel de deux événements s’est produit en premier, vous comparez deux nombres. Pas d’analyse syntaxique, pas de logique de calendrier.
  • Les calculs sont faciles. Ajouter une heure revient à ajouter 3600. Trouver l’écart entre deux événements n’est qu’une seule soustraction.
  • Il n’y a aucune ambiguïté. Une chaîne comme 03/04/05 pourrait correspondre à trois dates différentes selon la région. Un horodatage a exactement une seule signification.
  • Il est compact et triable. Trier des lignes par un nombre est rapide et vous donne gratuitement le bon ordre chronologique.

C’est pourquoi les bases de données, les formats de log, les métadonnées de fichiers, les champs d’expiration des JWT et d’innombrables API s’appuient sur le temps Unix en coulisses, puis ne convertissent vers un format convivial qu’aux extrémités.

Secondes contre millisecondes, le piège classique

Voici le détail qui piège presque tout le monde. Le temps Unix classique compte des secondes, mais de nombreux systèmes, JavaScript en particulier, comptent des millisecondes depuis la même époque. Un horodatage en millisecondes est simplement la valeur en secondes multipliée par 1000, il possède donc trois chiffres supplémentaires.

Le test de cohérence rapide : un horodatage actuel en secondes compte environ 10 chiffres, tandis qu’un horodatage actuel en millisecondes en compte environ 13. Si votre date convertie atterrit en 1970, vous avez presque certainement fourni des millisecondes à un outil qui attendait des secondes, ou l’inverse. Savoir quelle unité vous tenez en main évite des dates erronées d’un facteur mille.

Comment convertir un horodatage en date et inversement

Vous n’avez pas besoin de faire ce calcul à la main. Le Convertisseur d’horodatage Unix gratuit s’exécute entièrement dans votre navigateur, de sorte que les valeurs que vous collez ne sont jamais téléversées.

  1. Pour transformer un horodatage en date lisible, collez le nombre et lisez la date et l’heure humaines qu’il représente.
  2. Pour aller dans l’autre sens, saisissez une date et une heure de calendrier et récupérez l’horodatage Unix correspondant.
  3. Surveillez l’unité. Si votre source est en millisecondes, tenez compte des trois chiffres supplémentaires pour que votre résultat ne se retrouve pas décalé de plusieurs décennies.

Comme il fonctionne hors ligne dans l’onglet, vous pouvez convertir en toute sécurité des horodatages provenant de logs internes ou de données privées sans les envoyer à un serveur.

Faire plus que convertir

Convertir un seul horodatage n’est souvent que la première étape. Une fois que vous avez deux dates réelles, vous voulez généralement connaître l’écart entre elles. Le Calculateur de différence de dates vous indique combien de jours séparent deux dates, tandis que le Calculateur de durée gère les écarts mesurés en heures et en minutes, ce qui est pratique lorsque vous cherchez à savoir combien de temps un processus a tourné entre deux horodatages de log.

Pour le cas précis et courant où il s’agit de déterminer l’âge de quelque chose ou de quelqu’un à partir d’une date de départ, le Calculateur d’âge vous donne directement les années, les mois et les jours, de sorte que vous n’avez pas à convertir un horodatage de naissance et à compter à la main.

La version courte

Un horodatage Unix n’est que le décompte des secondes écoulées depuis le 1er janvier 1970 UTC, ce qui rend le stockage, la comparaison et les calculs sur le temps simples et sans ambiguïté. Surveillez la distinction entre secondes et millisecondes, rappelez-vous que le nombre brut ne porte aucun fuseau horaire, et convertissez aux extrémités lorsqu’un humain doit le lire. Le Convertisseur d’horodatage Unix gère les deux directions instantanément et en toute confidentialité dans votre navigateur, de sorte que ce nombre mystérieux dans vos logs devient une vraie date en une seconde.

Essayez Timestamp Unix maintenant

Convertisseur de timestamp Unix gratuit; transformez des secondes ou millisecondes epoch en dates UTC, locale et ISO 8601, ou une date en timestamp Unix.

Ouvrir Timestamp Unix

Outils gratuits associés