Bonjour tout le monde.

J'ai une boucle Batch dans un fichier .bat comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
dir *.log /B >> listing.txt
FOR /F  %%i in (listing.txt) do (
IF NOT EXIST %%~ni.jpg (
echo %%~ni:0,-2% >> img_manquantes.txt
)
)
Je liste tous les fichiers .log contenus dans mon dossier dans un fichier txt.
Ensuite, je compare ces nom de fichier (sans le .log) pour savoir si l'équivalent existe en .jpg dans mon dossier.
S'il n'existe pas le jpg associé, j'écris dans un fichier texte "img_manquantes.txt".

Au passage, je chercher à tronquer ma varible pour virer les 2 derniers caractères.

Voilà ce que ce bactch m'écrit dans mon fichier img_manquantes.txt :
montexteàtronquerA:0,-2
montexteàtronquerB:0,-2
montexteàtronquerC:0,-2
...
La boucle est OK, mais ca ne fonctionne pas pour le substring...


Quelqu'un à une idée?
(et au passage, si vous voyez comment optimiser ce script sans passer par un fichier txt pour la liste, je suis preneur )


Bonne soirée.