Bonjour,
Afin d'automatiser le déploiement d'une application sur une salle de pc, j'ai réalisé un script qui m'effectue plusieurs opérations (réveil des machines wol,copie des dossiers d'install et lancement de l'install avec psexec).
Ce script allumait le pc, pinguait la machine environ 60 fois (le temps qu'elle démarre) puis copiait les fichiers du serveur d'install vers
mon client.
J'ai voulu améliorer la partie qui s'occupait d'attendre le démarrage complet de la machine; et je me suis inspiré d'un code que j'ai trouvé ici, le but : si la machine répond au ping, alors on lance une copie des fichiers.
voici le code que j'ai simplifié pour vous cibler le problème:
Code :
- for %%p in (PC01, PC02, PC03 etc...) do (
- echo etape 1 - Reveil de la machine %%p
- call monscriptWOL.bat %%p
- :ping
- ping -n 1 %%p|find "TTL"
- if %errorlevel% NEQ 1 (goto:suite) else (goto :ping)
- :suite
- echo etape 2 - Copie des fichiers d'install sur %%p
|
Le problème est que lorsqu'on arrive sur la partie ":suite" la valeur de %%p n'est plus subtituée, j'ai un message "etape 2 - copie des fichiers d'install sur %p" (un seul %), pourtant mon premier echo affiche bien "etape 1 - Reveil de la machine PC01", pareil pour mon script et la commande ping...
Bref je patauge, j'espère avoir été clair dans mes explications, help !
---------------
Il [e2fsck] a bien démarré, mais il m'a rendu la main aussitot en me disant "houlala, c'est pas beau à voir votre truc, je préfèrerai que vous teniez vous même la tronçonneuse"