Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 10/04/2009, à 10:38

Lmartin76

[resolu]conversion date dans script shell

Bonjour,

Je voudrais savoir comment faire, dans un script, pour convertir une date au format timestamp (nombre de secondes écoulées depuis le 1 janvier 1970) au format DD/MM/YYYY.

le man de date ne précise pas s'il est possible d'indiquer le format d'entrée de la chaine a afficher

ex :

date +"%D" -d 1239368400

1239368400 : date invalide

j'ai essayé en ajoutant un format mais ça ne marche pas :

date +"%D" -d  1239368400 +"%s"

option invalide ou trop d'arguments

merci.

Dernière modification par Lmartin76 (Le 10/04/2009, à 12:27)


Planète bouillue, planète foutue.

Hors ligne

#2 Le 10/04/2009, à 11:53

Totor

Re : [resolu]conversion date dans script shell

Bonjour,
Comme ceci :

date +"%D" -d "01/01/1970 +1239368400 seconds"

-- Lucid Lynx --

Hors ligne

#3 Le 10/04/2009, à 11:58

Lmartin76

Re : [resolu]conversion date dans script shell

Totor a écrit :

Bonjour,
Comme ceci :

date +"%D" -d "01/01/1970 +1239368400 seconds"

Yo ! you're the best !

Merci totor, c'est au poil !


Planète bouillue, planète foutue.

Hors ligne

#4 Le 10/04/2009, à 12:34

Alain.g

Re : [resolu]conversion date dans script shell

Bonjour

ou encore :

date +%d/%m/%Y -d @1239368400

Xubuntu Karmic !

Hors ligne

#5 Le 10/04/2009, à 15:45

Lmartin76

Re : [resolu]conversion date dans script shell

ah ça me plait bien ça aussi !
merci.


Planète bouillue, planète foutue.

Hors ligne

#6 Le 12/04/2009, à 00:42

vogia

Re : [resolu]conversion date dans script shell

voila ce que j'avais fait un jour:

    SEC=$(echo `date -d "$MY_TIME" +%s`-`date +%s` | bc)  >/dev/null 2>&1    # en secondes = plus de précision

$MY_TIME est du style: "2009-03-18 16:45"
et le résultat est en secondes
bc est l'abréviation de bynary calculate.

#7 Le 15/04/2009, à 08:35

Lmartin76

Re : [resolu]conversion date dans script shell

Pour info : les résultats de Totor et Alain.g ne donnent pas le même résultat

Soit dateJour la date du jour format timestamp (heure et minutes à zéro):

datejour=$(date +"%s" -d $(date +'%D' ))

le résultat de

echo $(date +"%d/%m/%Y %T" -d "01/01/1970 + $datejour seconds")

donne => 14/04/2009 23:00:00 (une heure de moins que le résultat attendu.

alors que

echo $(date +"%d/%m/%Y %T" -d @$datejour)

donne => 15/04/2009 00:00:00 (résultat attendu)

(je n'ai pas essayé la commande de Vogia car je n'utilise pas le même format d'entrée)

Dernière modification par Lmartin76 (Le 15/04/2009, à 08:35)


Planète bouillue, planète foutue.

Hors ligne

#8 Le 15/04/2009, à 15:58

Alain.g

Re : [resolu]conversion date dans script shell

Il faut préciser UTC après seconds :

date +"%d/%m/%Y %T" -d "01/01/1970 + $datejour seconds UTC"

Xubuntu Karmic !

Hors ligne