Incrémenter variable dans boucle FOR - BAT

Julien -  
barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je voudrais incrémenter la variable num. Dans le cas présent, elle reste toujours à 10.. Une idée ? L'objectif est d'incrémenter le nom du fichier filename lors de la copie.

set num=10

setlocal enableDelayedExpansion
for /f "tokens=*" %%o in ('dir C:\Users\XX\Documents\Test\Collect7DAY\Collecte*. /w /b') do set /a num=%num%+1 && copy C:\Users\XX\Documents\Test\Collect7DAY\%%o C:\Users\XX\Documents\Test\Collect7DAY\MAM-S-CORE-01_DaletPlusServer_2\%filename%%num% /v/-y && timeout /t 2 && Echo ICI && Echo VALEUR%num%)
endlocal

J'ai essayé pas mal de choses... Mais je ne suis pas expert .bat

Need help !
Merci,

1 réponse

  1. barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   4 930
     
    Bonjour,

    Je n'ai pas testé mais ça devrait ressembler à ça :

    set num=10
    set source=%USERPROFILE%\Documents\Test\Collect7DAY
    cd /d %source% || exit /b 1

    setlocal enableDelayedExpansion

    for /f "tokens=*" %%O in ('dir "Collecte*" /b /a-d') do (
    set /a num+=1
    copy "%%~fO" "%source%\MAM-S-CORE-01_DaletPlusServer_2\%%~nO!num!%%~xO" /v/-y
    timeout /t 2
    echo ICI & echo VALEUR!num!
    )

    endlocal


    0