Bonjour,
Voilà le problème que j'ai.
J'ai des fichiers "1.txt" "2.txt" "3.txt" ...
A chaque fois que je vais lancer le .bat que je peine à réaliser je dois ajouter 1 au numéro de fichier le plus élevé.
J'ai essayé plusieurs solutions mais rien n'y fait je bloque à chaque fois sur un truc c'est pénible.
1 - J'ai essayé avec une boucle FOR /R en récupérant la valeur Max des fichiers avant le ".txt". Mais impossible récupérer le max en dehors de la boucle.
2 - Je stocke un fichier contenant uniquement le numéro max des fichiers "txt". Je récupère correctement cette valeur grâce à un for /f
Mais bizarrement quand je lance plusieurs fois le script j'obtiens ça.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 for /f %%i IN (%FILE_IDX%) DO ( set /a NP1 = 1+%%i copy %DIR_FILES%\%%i.vbs %DIR_FILES%\%NP1%.vbs echo %NP1% > %FILE_IDX% )
Une fois sur 2 le numéro du fichier n'est pas incrémenté. J'y comprends rien.copy .\1.vbs .\2.vbs
copy .\2.vbs .\2.vbs /!\
copy .\2.vbs .\3.vbs
De toute manière cette solution n'est pas la meilleure. La top c'est la première ou je dois calculer la version max. Mais je pense que je serais confronté au même problème de calcul.
Deplus je n'arrive à faire le calcul du max et resortir la variable en global pour ensuite ajouter 1 à cette valeur.
Auriez une idée pour m'aider ? Merci
Partager