.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. 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
        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