Bonjour,
J'essaye d'optimiser un script que j'ai créer, je voudrais que si le net use ne se fait pas, il m'affiche une erreur dans un fichier et passe la copie puis le net use /delete.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
for /f "skip=2 tokens=1,* delims=," %%a in (postes_product.txt) do (
echo %%b >>trace.log
NET USE M: %%a\c$ /user:localhost\administrateur **********
if ERRORLEVEL 1 goto Problem
if ERRORLEVEL 0 goto NoProblem
:NoProblem (
copy /y modif_proxy.bat M:\
echo ok pour %%b >>trace.log
NET USE M: /delete
GOTO Next
)
:Problem (
echo erreur pour %%b >>trace.log
goto Next
)
:Next
echo au suivant >>trace.log
)
Lorsque j'exécute ce script, je n'ai dans trace.log que cela :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
FRBEAW060 
erreur pour %b 
au suivant
Si je rajoute une pause à la fin j'ai droit à cela dans la console
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
C:\essai>for /F "skip=2 tokens=1,* delims=," %a in (postes_product.txt) do (
echo %b  1>>trace.log
 NET USE M: %a\c$ /user:localhost\administrateur ********
 if ERRORLEVEL 1 goto Problem
 if ERRORLEVEL 0 goto NoProblem
 copy /y modif_proxy.bat M:\
 echo ok pour %b  1>>trace.log
 NET USE M: /delete
 GOTO Next
)

C:\essai>(
echo FRBEAW060  1>>trace.log
 NET USE M: \\FRBEAW060\c$ /user:localhost\administrateur ********
 if ERRORLEVEL 1 goto Problem
 if ERRORLEVEL 0 goto NoProblem
 copy /y modif_proxy.bat M:\
 echo ok pour FRBEAW060  1>>trace.log
 NET USE M: /delete
 GOTO Next
)
L'erreur système 85 s'est produite.

Nom de périphérique local déjà utilisé.


C:\essai>echo erreur pour %b  1>>trace.log

C:\essai>goto Next

C:\essai>echo au suivant  1>>trace.log
Il ne voit pas les : devant NoProblem, Problem et Next.
J'ai essayé sans et avec parenthèse, avec et sans ":", en rajoutant "setlocal enabledelayedexpansion" au début du script (je l'ai lu sur un forum). Rien n'y fait.
Je ne comprends pas.

Si vous pouvez m'aider Merci.