Convertir un timestamp
Par Dimitri Robert, vendredi 18 juillet 2008 à 14:40 :: Bidouille :: #186 :: rss
Juste histoire de dire que ce blog n'est pas à l'abandon et pour vérifier qu'il marche toujours et aussi pour noter un truc utile...
Des timestamps on en trouve plein les logs. Sauf que pour les comprendre il faut être une machine. Voici le traducteur :
echo $timestamp | awk '{print strftime("%F %T",$1,$1)}'
Vous remplacez $timestamp par votre timestamp et ça roule tout seul. Par exemple :
$ echo 1216310257 | awk '{print strftime("%F %T",$1,$1)}'
2008-07-17 15:57:37
Pour un fichier :
awk '{print strftime("%F %T",$1,$1) $0}' fichier
Ici $1 représente la position du timestamp dans la ligne de chaque fichier (en admettant également que le séparateur est l'espace). Adaptez en fonction de vos fichiers. Si le timestamp est en 4e position dans chaque ligne, mettez $4. $0 représente la totalité de la ligne. On peut peut-être faire en sorte de ne pas réafficher le timestamp. Mais la solution que je vous propose ici est pour faire rapide. Pour une solution sérieuse utilisez Perl.
Pourquoi le paramètre $1 est répété ? Parce qu'il est utilisé deux fois. Une fois pour afficher la date avec %F, une fois pour l'heure avec %T. Pour connaître tous les symboles possibles faites un man date.
À bientôt pour un nouveau billet.


Commentaires
1. Le vendredi 22 août 2008 à 16:28, par Busby SEO Challenge :: site
Ajouter un commentaire
Les commentaires pour ce billet sont fermés.