Utilitaire ’date’ sur Unix
Utiliser un format
Pour indiquer un format, il faut préciser + suivi des paramètres
Champs horaires
| %H | heure (00..23) |
| %I | heure (01..12) |
| %k | heure ( 0..23) |
| %l | heure ( 1..12) |
| %M | minute (00..59) |
| %p | notation locale pour AM ou PM. |
| %r | heure actuelle (sur 12 heures) (hh:mm:ss [AP]M) |
| %s | secondes écoulées depuis le 01-01-1970 à 00:00:00 T.U (extension non standard) |
| %S | secondes (00..61) |
| %T | heure actuelle, (sur 24 heures) (hh:mm:ss) |
| %X | représentation locale de l’heure (%H :%M :%S) |
| %Z | fuseau horaire (par ex. MET), ou rien si le fuseau horaire n’est pas déterminé |
Champs de date
| %a | abréviation locale du jour de la semaine (Dim .. Sam) |
| %A | nom local du jour de la semaine (Dimanche .. Samedi) |
| %b | abréviation locale du nom du mois (Jan..Dec) |
| %B | nom local du mois (Janvier .. Décembre) |
| %c | date et heure locales (Sat Nov 04 12:02:33 EST 1989) |
| %d | jour du mois (01..31) |
| %D | date (mm/jj/aa) |
| %h | comme %b |
| %j | jour de l’année (001..366) |
| %m | mois (01..12) |
| %U | numéro de semaine dans l’année (00..53). La semaine commence le Dimanche. |
| %w | Jour de la semaine (0..6). Le 0 correspond au Dimanche. |
| %W | numéro de semaine dans l’année (00..53). La semaine commence le Lundi. |
| %x | représentation locale de la date (mm/jj/aa) |
| %y | deux derniers chiffres de l’année (00..99) |
| %Y | année (1970...) |
Mise en forme
| % | un caractère % littéral. |
| n | saut de ligne |
| t | tabulation horizontale |
Ex : Affichage de la date en YYMMDD
date +%y%m%d
Heure GMT
L’heure GMT peut être afficher avec l’option -u
Calculer la date de la veille
Pour calculer une date de la veuille, on précise un fuseaux horaires de plus de 24h, cette astuce n’est pas disponible sur tous les OS mais peut être très pratique.
TZ=MET+24;date
de la même manière, on pourra obtenir la date du lendemain :
TZ=MET-24;date
et ainsi de suite en se décalant par tranches de 24 heures.
Date au format ISO
Ce type de format est le seul normalisé, les utilisateurs de shell seront heureux d’apprendre que la fonction date dispose d’une option ISO. Attention ! non disponible sur tous les OS.
date --iso-8601=seconds
Date ISO d’un fichier
date --iso-8601=seconds -u -r /tmp/foo.txt
Article
date est l’exécutable qui permet d’afficher une date et une heure en fonction d’un format. L’utilisation des fuseaux horaires permet d’effectuer des décalages d’heures mais aussi de jours.
| Date : | 16 septembre 2005 |
|---|---|
| Visites : | 25495 |
| Auteur : | E. Angenault |
| Site : | Angenault.net |
Accès rapide
Dossier
Avant même de traiter une date, il est nécessaire de savoir ce qu’elle signifie et comme on peut l’écrire.
Planification
Définir une date peut paraitre trivial mais il suffit de traiter des jours fériés ou des fuseaux horaires pour que cela devienne rapidement complexe.