Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

date au format unix

3 réponses
Avatar
octane
Bonjour,

j'ai vu dans une BdD (mySQL) des dates stockees sous la forme d'un
nombre.
Par exemple, le 22 janvier 2007 vaut: 1169506799
Il me semble que cela equivaut au nombre de secondes ecoulees depuis
une
date standard.
ma question: existe t'il un utilitaire qui me fasse la conversion dans
un sens
ou dans un autre?

Merci

3 réponses

Avatar
lhabert
:

Par exemple, le 22 janvier 2007 vaut: 1169506799
Il me semble que cela equivaut au nombre de secondes ecoulees depuis
une
date standard.


1er janvier 1970

ma question: existe t'il un utilitaire qui me fasse la conversion dans un
sens ou dans un autre?


date (au moins la version GNU (celle dispo sous linux), je ne sais pas pour
les autres), avec les bonnes options, lire la page de man.

Avatar
Stephane Chazelas
2007-01-25, 00:35(-08), :
Bonjour,

j'ai vu dans une BdD (mySQL) des dates stockees sous la forme
d'un nombre. Par exemple, le 22 janvier 2007 vaut: 1169506799
Il me semble que cela equivaut au nombre de secondes ecoulees
depuis une date standard. ma question: existe t'il un
utilitaire qui me fasse la conversion dans un sens ou dans un
autre?
[...]


Le plus portable que tu puisses trouver est probablement perl:

perl -MPOSIX -le 'print strftime("%c",
localtime shift @ARGV)' 1169506799

En POSIX, tu peux t'en sortir avec pax, mais ca te donne une
date à la "ls -l"

printf '070707%42s%011o%06o%11s:%s%59s%21s%347s' 0
1169506799 2 0 070707 13 'TRAILER!!!' 0 | tr ' ' 0 |
pax -v | sed '
s/.*[[:blank:]]0[[:blank:]]{1,}(.*[^[:blank:]:]).*/1/'

Sinon, ya GNU awk, GNU date, BSD date.

--
Stéphane

Avatar
David
On Jan 25, 9:35 am, wrote:
Bonjour,

j'ai vu dans une BdD (mySQL) des dates stockees sous la forme d'un
nombre.
Par exemple, le 22 janvier 2007 vaut: 1169506799
Il me semble que cela equivaut au nombre de secondes ecoulees depuis
une
date standard.
ma question: existe t'il un utilitaire qui me fasse la conversion dans
un sens
ou dans un autre?


Si j'ai bien compris, tu veux à partir d'un champ datetime dans une
base MySql, extraire une date dans un format lisible ? Alors utilises
la commande mysql avec une requête "select ... from ..." en utilisant
les fonctions suivantes :

- Extraire le jour d'une date : day(date)
- Extraire le mois d'une date : month(date)
- Extraire l'année d'une date : year(date)
- Extraire la semaine d'une date : week(date)
- Extraire la semaine d'une date : week(date)
- Extraire l'heure : hour(time)
- Extraire les minutes minute(time)
- Extraire les secondes : second(time)
- Extraire d'un coup une date dans un format lisible :
date_format(date,"format") ex: date_format(now(), "%Y%m%d")

+ d'info : http://www.asp-php.net/tutorial/asp-php/equivalences_sql.php

--
David