Aide DOS - Win 7 - Windows & Software
Marsh Posté le 29-05-2013 à 15:42:17
Je cherche et j'ai une piste, ma variable noext ne prend sa valeur qu'une fois la boucle FOR terminée et prend la dernier valeur %%i (dernier fichier .tif).
En dehors de ma boucle FOR, je ne redefinit pas cette variable, uniquement dedans, aucun intérêt sinon !
Chelou ...
PS : est ce qu'un gentil modo pourrait déplacer mon post dans la section shell/batch ?
Marsh Posté le 29-05-2013 à 16:24:31
J'ai trouvé
l'utilisation de SETLOCAL ENABLEDELAYEDEXPANSION et des !! pour appeler la variable dans la boucle !
Ca faisait un moment que je tournais autour de cette variable sans comprendre son principe.
DOS ca parait simple comme ca, en fait c'est un langage de vicelard
Merci à moi même
Marsh Posté le 29-05-2013 à 14:35:52
Bonjour,
j'en appelle aux experts scripting est un bien grand mot en DOS, mais tout de même.
Dans une boucle sur des fichiers, je cherche à supprimer l'extension d'un fichier, or cela ne marche pas, la valeur noext est vide.
Pourquoi ?
FOR %%i IN (*.TIF) do (
SET "noext=%%~ni"
echo %noext%
gm convert -compress fax -density 150 -units PixelsPerInch "%%i" "%noext%-Tr.tif"
Merci d'avance.