Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1633 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Boucle FOR : ") etait inattendu"

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Boucle FOR : ") etait inattendu"

n°2307804
justdoit00​8
Posté le 16-11-2017 à 17:19:27  profilanswer
 

Bonjour,
 
J'ai un petit launcher qui parcours une liste de hostname pour lancer un batch sur chaque poste avec le nom d'hote en parametre.
Il fonctionnait tres bien mais etait un peu lent, alors j'ai apporté une petite modification à mon batch dans le but d'accelerer son deroulement.
Maintenant il plante des le debut de l'execution avec le retour " ) etait inattendu"  
Je ne trouve pas mon erreur, votre aide serait très appréciée.  
 
AVANT :

Code :
  1. @echo off
  2. echo %time% --------------- LAUNCHER started>>log.txt
  3. for /f %%a in ('type hostnames.txt') do (
  4. IF EXIST "\\%%a\C$\Windows\System32\config.txt" (
  5.  start starter.cmd %%a
  6.  echo %time% $$$$$$$$$$ Started psexec for %%a $$$$$$$$$$>>log.txt
  7. )
  8. )


APRES :

Code :
  1. @echo off
  2. echo %time% --------------- LAUNCHER started>>log.txt
  3. for /f %%a in ('type hostnames.txt') do (
  4. PING -n 1 %%a | FIND "TTL" > NUL
  5. IF ERRORLEVEL 1 GOTO NEXT
  6. IF EXIST "\\%%a\C$\Windows\System32\fsdbupdate.exe" (
  7.  start /b starter.cmd %%a
  8.  echo %time% $$$$$$$$$$ Started psexec for %%a $$$$$$$$$$>>log.txt
  9. )
  10. :NEXT
  11. )

mood
Publicité
Posté le 16-11-2017 à 17:19:27  profilanswer
 

n°2307825
rat de com​bat
attention rongeur méchant!
Posté le 17-11-2017 à 19:50:11  profilanswer
 

On dirait que Windows n'aime pas la parenthèse directement après le label... Solution bricolage mais qui semble marcher:
)
:NEXT
rem blabla
)
 
(rem = commentaire)

n°2307827
MaybeEijOr​Not
but someone at least
Posté le 17-11-2017 à 20:21:18  profilanswer
 

Bonjour,

 

Cela fait bien trop longtemps que je n'ai pas fait de batch mais ne serait-ce pas possible d'éviter un goto label en inversant la condition du if et en incluant le second if dedans? Cela me semblerait plus propre, mais peut-être que quelque chose m'échappe.

 

Sinon je pense qu'il attend une commande après le next donc peut-être tenter :
:NEXT
()
)

Message cité 1 fois
Message édité par MaybeEijOrNot le 17-11-2017 à 20:21:49

---------------
C'est en écrivant n'importe quoi qu'on devient n'importe qui.
n°2307828
rat de com​bat
attention rongeur méchant!
Posté le 17-11-2017 à 20:35:30  profilanswer
 

MaybeEijOrNot a écrit :

Cela fait bien trop longtemps que je n'ai pas fait de batch mais ne serait-ce pas possible d'éviter un goto label en inversant la condition du if et en incluant le second if dedans? Cela me semblerait plus propre, mais peut-être que quelque chose m'échappe.

Non tu as raison, on pourrait aussi faire comme ça. :o


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Boucle FOR : ") etait inattendu"

 

Sujets relatifs
Boucle taille fichiers et lancementCréation de boucle pour un affichage de deux tables
Explication des variables dans un boucleFormulaire créé en javascript limité à 90 "lignes"
boucle while avec affectation en pythonProblème META REFRESH tourne en boucle
créer des listes python en boucle list(n)recupérer une chaine de texte d'un variable FOR
Problème avec boucle foreach powershell 
Plus de sujets relatifs à : Boucle FOR : ") etait inattendu"


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR