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 :

Créer une condition à partir de %date% [Batch]


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur
    Inscrit en
    Novembre 2018
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Novembre 2018
    Messages : 64
    Par défaut Créer une condition à partir de %date%
    Bonjour, je cherche en batch un moyen permettant de créer une condition avec la date,

    par exemple:
    - si la date est supérieure au 13/06/2020 alors aller à ....
    - si la date est supérieure au 24/06/2020 alors quitter.

  2. #2
    Membre habitué Avatar de Lockan
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Avril 2019
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2019
    Messages : 14
    Par défaut
    Bonjour,

    Voici une solution pour ton cas qui consiste à transformer un format de date en nombre pour pouvoir le comparer.
    Attention, on part du principe que la date est au format JJ[-/. ]MM[-/. ]AAAA (ex : 13/06/2020)

    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    @Echo Off
     
    :: La date à comparer au format JJ/-.MM/-.AAAA
    Set "compareDate=13/06/2020"
     
    :: convertir date au format AAAAMMJJ
    Call:convertDateToNumber compareDate %compareDate%
    Call:convertDateToNumber today %DATE%
     
    :: On peut comparer normalement
    If %today% LSS %compareDate% (
        Echo Nous sommes avant
    ) Else If %today% GTR %compareDate% (
        Echo Nous sommes après  
    ) Else Echo c'est aujourd'hui
     
     
    Pause
    Goto:EOF
     
    :: Transformer une date JJ[-/. ]MM[-/. ]AAAA au format AAAAMMJJ
    :convertDateToNumber
    For /F "tokens=1,2,3 delims=/-. " %%a In ("%2") Do Set %1=%%c%%b%%a
    Goto:EOF

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur
    Inscrit en
    Novembre 2018
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Novembre 2018
    Messages : 64
    Par défaut
    Merci beaucoup mais c'est plutôt comme ça non ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    If %today% GTR %compareDate% (
        Echo Nous sommes avant
    ) Else If %today% LSS %compareDate% (
        Echo Nous sommes après  
    ) Else Echo c'est aujourd'hui
    Ou alors c'est mon ordinateur qui n'a pas apprit les maths

  4. #4
    Membre habitué Avatar de Lockan
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Avril 2019
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2019
    Messages : 14
    Par défaut
    Nan les deux sont possible, ça dépend de quelle date tu veux comparer. Dans ton exemple c'est bien mon cas qui prime puisqu'on compare la date du jour à une date à comparer. Là tu fais l'inverse.

    Dans tous les cas c'est à toi d'utiliser ce code comme bon te semble.

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur
    Inscrit en
    Novembre 2018
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Novembre 2018
    Messages : 64
    Par défaut
    Citation Envoyé par Lockan Voir le message
    Nan les deux sont possible, ça dépend de quelle date tu veux comparer. Dans ton exemple c'est bien mon cas qui prime puisqu'on compare la date du jour à une date à comparer. Là tu fais l'inverse.

    Dans tous les cas c'est à toi d'utiliser ce code comme bon te semble.
    Ah bah oui c'est vrai. Merci beaucoup de ton aide

  6. #6
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    For /F "tokens=1,2,3 delims=/-. " %%a In ("%2") Do Set %1=%%c%%b%%a
    Pourquoi utiliser la boucle for quand ce n'est pas nécessaire ? Une simple extraction de chaine suffirait

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 20/05/2014, 09h51
  2. Comment créer une condition Max(Date)
    Par prudy1977 dans le forum Designer
    Réponses: 6
    Dernier message: 25/08/2011, 10h45
  3. Créer une alerte à partir d'une date donnée
    Par Skumps dans le forum Access
    Réponses: 4
    Dernier message: 13/04/2006, 16h12
  4. Créer une table à partir d'une autre dans un script
    Par Dam)rpgheaven dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 24/06/2005, 10h55
  5. Créer une video à partir d'images
    Par Akta3d dans le forum DirectX
    Réponses: 5
    Dernier message: 13/07/2004, 14h46

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