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

Scripts/Batch Discussion :

batch - date système en nombre


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Décembre 2007
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 17
    Par défaut batch - date système en nombre
    comment dans un script batch de récuperer la date (%date%)
    sous forme d'un nombre
    au lieu du format texte clair aaaajjmm..... ?

    merci

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    19 647
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 19 647
    Par défaut
    aaammjj étant une suite de chiffre c'est un nombre
    Ce que tu veux c'est récupérer un entier significatif comme sous Excel par exemple ?
    Ce n'est pas possible directement avec les fonctions DOS et la date est retournée au format correspondant aux paramètres internationnaux.

  3. #3
    Membre averti
    Inscrit en
    Décembre 2007
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 17
    Par défaut
    %date% renvoit en réalité la date en clair telle que
    15/12/2007

    il faudrait alors :

    soit la reformater en 20071215
    est-ce possible ?

    soit faire une calcul du nombre de jours depuis 01/01/1900 tel que
    15 + 12*30 + 1007*365
    est-ce possible ?

    merci

  4. #4
    Membre éprouvé
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Par défaut
    echo %date:/=%

  5. #5
    Membre averti
    Inscrit en
    Décembre 2007
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 17
    Par défaut
    pas trouvé de solution dans la faq indiqué par Kokotis

    >echo %date:/=%
    renvoit 15122007

    je cherche à en déduire le nombre de jours depuis une date donnée
    exemple depuis le 01/01/1900

    une solution ?

    merci

  6. #6
    Membre chevronné

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    19 647
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 19 647
    Par défaut
    Pas en DOS
    DOS est un OS, pas un langage
    Il y a quelques commandes, mais rien qui permette de faire des calculs ou des conversions.
    Tourne-toi vers un vbs, ça ira tout seul

  7. #7
    Membre Expert
    Avatar de Juju_41
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Février 2003
    Messages
    974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Février 2003
    Messages : 974
    Par défaut
    Moi j'ai vu qu'il demandait :
    Citation Envoyé par jover Voir le message
    %date% renvoit en réalité la date en clair telle que
    15/12/2007

    il faudrait alors :

    soit la reformater en 20071215
    est-ce possible ?

    soit faire une calcul du nombre de jours depuis 01/01/1900 tel que
    15 + 12*30 + 1007*365
    est-ce possible ?
    Ce qui est tout à fait possible contrairement à ce que tu dis (même si je te l'accorde, la formule n'est pas exacte, il n'y a pas forcément 30 jours dans un mois et 365 jours par an).

  8. #8
    Membre éprouvé
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Par défaut
    Citation Envoyé par Juju_41 Voir le message
    l n'y a pas forcément 30 jours dans un mois et 365 jours par an).
    Il faut aussi penser aux années bissextiles

  9. #9
    Membre chevronné

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    19 647
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 19 647
    Par défaut
    Et surtout faire preuvre de courage
    Certes on peut faire un calcul comme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    @echo off
    set j=15
    set m=12
    set a=1007
    set /a z=%j% + %m%*30 + %a%*365
    echo %z%
    Mais en VBS on a des fonctions qui permettent de faire directement la différence entre deux dates et obtenir un entier, pas en DOS.

    Et ici on impose les valeurs jours-mois-année alors qu'il faudrait les calculer...

Discussions similaires

  1. date système au format AAJJJ
    Par Rnx69 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 07/06/2005, 19h45
  2. [MFC] Pb avec Heure et date système
    Par spirit_1999 dans le forum MFC
    Réponses: 5
    Dernier message: 07/06/2005, 16h31
  3. [DB2] - Comparer une date à la date système
    Par rémi_tounul dans le forum DB2
    Réponses: 3
    Dernier message: 19/05/2005, 11h45
  4. [Sybase] Récupération de la date système
    Par atos dans le forum Sybase
    Réponses: 2
    Dernier message: 03/03/2004, 14h29
  5. [VB6] Problème d'addition de dates et de nombres
    Par pepper dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 28/11/2002, 21h12

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