{{tag>bash date timestamp conversion dev sysadmin}} ====== date: convertir et manipuler les timestamp ====== Le **timestamp** est le nombre de secondes écoulées depuis le temps référence (timestamp UNIX) le 01/01/1970 à 0h. Depuis la ligne de lorsqu'on invoque la commande **date** sans argument, le timestamp correspondant à l'instant courant est formaté et affiché sous forme d'une chaîne de caractères facilement lisible et interprétable pour l'utilisateur: $ date Le format peut être défini en argument. Dans l'exemple ci-dessous le timestamp brut est affiché en spécifiant le format via l'argument "+%s": $ date +%s Un argument commençant par **+** permet de spécifier le format de sortie, **%s** affiche le timestamp brut. Sans argument supplémentaire, le timestamp du temps présent est retourné. Il est possible de spécifier la date avec laquelle la commande doit travailler grâce à l'option **%%--%%date** ou **-d**: # afficher la valeur brute du timestamp pour la date du 01/01/2017 $ date --date="2017-01-01" +%s $ date --date="2017-01-02 12:00" +%s Au contraire pour afficher la date correspondant à un timestamp donné, saisir le timestamp dans l'argument **%%--%%date** préfixé par **@**: $ date --date="@1483225200" # Pour définir un format d'affichage personnalisé sur un timestamp connu $ date --date="@1483225200" +"%d/%m/%Y"