Ping en attendant quelque chose dans un .txt

minidou -  
karirovax Messages postés 3584 Statut Membre -
Bonjour,

Je vois qu'il y a pas mal de personne qui s'y connait en batch donc voici ma question:

Je voudrais effectuer une tempo (un ping ou autre) jusqu'à temps que dans un fichier .log j'ai marqué "Traitement terminé". Une fois que le batch vois cette info, celui-ci continue sur autre chose... Le fichier log se remplit donc petit à eptit (pendant une install d'un programme) et dès que l'on voit marquer dans le log "Traitement terminé" le batch continuerai...

Merci de vos reponse...

1 réponse

  1. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 660
     
    hello
    vola un exemple de boucle.
    j'ai enlevé le é de terminé, DOS ne compred pas les accents
    le ping attend 5 secondes avant le goto
    la boucle est inifinie si le texe n'apparait jamais, on peut mettre un compteur maximum
    @echo off   
    
    set log=z.log  
    set texte=Traitement termin  
    
    :boucle  
    findstr "%texte%" %log% > NUL  
    if %errorlevel% EQU 1 (  
    ping -n 5 127.0.0.1 > NUL  
    goto boucle  
    )  
    echo on continue  
    
    3
    1. karirovax Messages postés 3584 Statut Membre 215
       
      salut

      trés bon batch , mais je donne mon point de vue :

      si je change :
      set texte=Traitement termin

      par :

      set texte=Traitement termin'

      est ce que possible ?
      0
    2. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 660
       
      mais alors findstr ne trouvera pas le mot termine ou terminé
      0
    3. karirovax Messages postés 3584 Statut Membre 215
       
      Re,

      pourquoi .... car je croix que :

      é = Alt+0130 = '
      vous pouvez m'éxpliquer , car j'ai trampé
      0
    4. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 660
       
      si le fichier texte a été crée en DOS,oui; si le fichier texte vient de Windows, ' n'est pas reconnu comme é
      f1.txt crée en DOS, f2.txt crée par le bloc-note
      C:> type f1.txt
      Traitement terminé
      
      C:> type f2.txt
      Traitement terminÚ
      
      C:>
      
      0
    5. karirovax Messages postés 3584 Statut Membre 215
       
      Re,
      oui , je sais
      si on fait :

      echo Traitement termin'>text1.txt

      ou encore avec le Bloc-notes
      Traitement termin et en appuant sur Alt+0130 donc je trouve que la même résultat
      0