Fonctions de Temps
Puisqu'une des utilisations principales des programmes AWK est le traitement de fichiers journaux qui contiennent des informations d'horodate, gawk fournit les deux fonctions suivantes pour l'obtention des horodates et leur formatage.
mktime(spéc-date)
Convertit spéc-date en une horodate de la même forme que celle retournée par systime(). La spéc-date est une chaîne de la forme AAAA MM JJ HH MM SS[ DST] (Daylight Saving Time). Le contenu de la chaîne est constitué de six ou sept nombres représentant respectivement l'année complète en incluant le siècle, le mois entre 1 et 12, le jour du mois entre 1 et 31, l'heure de la journée entre 0 et 23, la minute entre 0 et 59, la seconde entre 0 et 59, et un drapeau optionnel « daylight saving » (changement horaire lors du passage à l'heure d'été).
Les valeurs de ces nombres ne doivent pas forcément se situer dans les intervalles spécifiés ; par exemple, une heure de -1 signifie 1 heure avant minuit. Le calendrier grégorien avec origine zéro est implicitement utilisé, avec l'année 0 précédant l'année 1, et l'année -1 précédant l'année 0. L'heure est supposé être exprimée dans le fuseau horaire local. Si le drapeau de changement horaire est positif, l'heure est supposée être l'heure d'été ; s'il est nul, l'heure est supposée être l'heure standard ; et, s'il est négatif (le défaut), mktime() essaiera de déterminer si l'heure d'été a cours pour l'heure spécifiée. Si spéc-date ne contient pas assez d'éléments ou si l'heure résultante est hors borne, mktime() renvoie -1.
strftime([format [, horodate]])
Formate l'horodate en fonction de la spécification de format. L'horodate devrait être de la même forme que celle renvoyée par systime(). Si horodate manque, l'heure du jour courante est utilisée. Si format n'est pas présent, un format par défaut équivalent à la sortie de date(1) est utilisé. Voyez la spécification de la fonction strftime() du C ANSI pour savoir quelles conversions de format sont garanties être disponibles. Une version du domaine public de strftime(3) et la page de manuel qui l'accompagne sont livrées avec gawk ; si cette version a été utilisée pour construire gawk, alors toutes les conversions décrites dans cette page de manuel sont disponibles pour gawk.
systime()
Renvoie l'heure actuelle sous forme du nombre de secondes écoulées depuis le début de l'Epoch (le 1er Janvier 1970 à minuit GMT sur les systèmes POSIX).
Partager