.bat compte a rebour

Bonjour a tous,

Comment faire un compte a rebour qui reste sur place, donc

Attendez 10 secondes...

et que le 10 devient 9 ... 8 ... etc
Merci pour votre aide :)

13 réponses

  1. j'étais en train d'essayer de faire çà quand même en batch même si j'aurai un peu de mal à savoir ce qui existe ou pas comme commande native sous Seven ..

    j'avais pensé (comme évoqué dans la source que j'avais cité) à un ping pour l'attente (car c'est bien çà qui -sans jeu de mot- pause problème..) mais je ne suis pas satisfait de la précision obtenue..

    voici ce que je propose (allez.....qui dit mieux ?)
    @echo off     
    for /L %%i in (10,-1,1) do (      
      echo Veuillez attendre %%i sec     
      PING 1.1.1.1 -n 1 -w 1000 >NUL     
    )     
    

    Edit : explications, pour i qui va de 10 à 1 en perdant 1 à chaque fois, faire un ping vers une adresse inexistante et un timeout de 1 sec en redirigeant la sortie sur NUL; puis afficher le nombre de secondes restantes.
    NB : desfois il m'associe 2 commandes d'un coup je ne sais pas pourquoi ?
  2. J'ai modifier légèrement le programme de boly38 pour que seulement la valeur des secondes changes

    @echo off
    for /L %%i in (10,-1,1) do (
    echo Veuillez attendre %%i sec

    PING 1.1.1.1 -n 1 -w 1000 >NUL
    cls
    )
    ECHO END
    pause

    bonne journée
    1. sa sais les jar qui fait sa ( va sur le site zero pour apprendre le jave ^^ )
      1. tu créer le fichier jave aprés en tu le nom comptarebour.jar et quand ta finie tu le mais dans un dossier

        tu créer un .bat et tu mais sa

        @echo off
        title Ancestra Remake V0.5.4 Rev 33 Compiler Par Demien
        :loop
        Java -jar -Xmx 5m -Xms 5m comptarebour.jar
        goto loop
        PAUSE

        je croix attention faut mais le .bat dans le même dossier que comptarebour.jar
        1. Merci pour ta reponse boly38, j'ai deja vu cette commande, mais elle ne marche que sous vista :'(
          1. Pas mal boly38, moi j'ai trouvé ca, mais il faut quelque chose qui va actualiser le echo

            @ECHO OFF
            set /a nomjou=10
            echo Attendez %nomjou% secondes
            :boucle
            set /a nomjou = nomjou - 1
            ping -n 1 127.0.0.0 > NUL
            if %nomjou%==0 goto finboucle
            goto boucle
            :finboucle
            ECHO END
            pause

            Si vous avez trouvé quelque chose de incorreect dans mon batch, dites le moi (je suis debutant :D)
            1. Ne me démandez pas pourqoui le variable s'appelle 'nomjou' :p