IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Applications et environnements graphiques Discussion :

probleme initialisation de date


Sujet :

Applications et environnements graphiques

  1. #1
    Membre confirmé
    Inscrit en
    Juillet 2006
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 71
    Par défaut probleme initialisation de date
    Bonjour, j'aimerai soustraire deux dates pour vérifier si il y a ou non plus de 15 minutes entre ces deux dates.
    J'ai donc penser les convertir en secondes via l'options %s (nombre de seconde depuis le 1er janvier 1970).
    Voici ce que j'ai fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    date=`date +"4/Apr/2009:17:43:33-%s"`;echo ${date}
    4/Apr/2009:17:43:33-1242116020
    Mon problème est que le %s varie, a mon avis c'est le %s de la date actuelle.
    Comment puis je faire pour récupérer le %s de la date donnée?

    Si vous avez une meilleure méthode pour soustraire les dates n'hésitez pas non plus...

    Merci
    Antoine

  2. #2
    Membre émérite Avatar de jmelyn
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2007
    Messages
    703
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2007
    Messages : 703
    Par défaut
    Bonjour,

    Le principe est bien le bon: tout passer en secondes, faire l'arithmétique nécessaire puis convertir le résultat pour plus de lisibilité. La commande date possède l'option -d qui nous intéresse ici.

    Quelques lignes de script en illustration:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    #!/bin/bash
    
    date_1_sec=$(date -d 2009-02-28 +%s)  # le 28 fév. 2009
    date_2_sec=$(date +%s)                # maintenant
    diff_date_sec=$(( date_2_sec - date_1_sec ))
    diff_date_jours=$(( diff_date_sec / 86400 ))
    Remarquez qu'en Bash l'arithmétique (entre $(( et )) ) ne demande pas le $ pour les variables: on écrit a=$(( b + c )) et non a=$(( $b + $c )).

Discussions similaires

  1. Help!! Probleme avec les dates sur SQL SERVER
    Par Nadaa dans le forum MS SQL Server
    Réponses: 16
    Dernier message: 03/08/2006, 16h55
  2. probleme urgent format date
    Par donny dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 08/08/2005, 11h44
  3. [Debutant] Probleme initialisation de references
    Par kiroukou dans le forum Débuter
    Réponses: 17
    Dernier message: 02/03/2005, 13h55
  4. [JDBC][MS ACCESS] probleme insertion de date
    Par darius_the_first dans le forum JDBC
    Réponses: 2
    Dernier message: 10/12/2004, 18h04
  5. MS Access et TQuery (probleme sur les dates)
    Par Djob dans le forum C++Builder
    Réponses: 4
    Dernier message: 15/06/2004, 14h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo