Envoyé par
maxim_um
Simplement t'amener à la conclusion que «for», dans le contexte de cette discussion, n'est pas adapté.
On peut aboutir très facilement à des résultats inattendus. Ainsi, outre le souci de fiabilité, il y a en plus le problème de la flexibilité qui n'est pas au rendez-vous. Tu conviendras donc que dans l'absolu, rien n'interdit de remplacer "pwg_high\*.jpg" par "pwg_high\image2_pan.jpg", mais le résultat escompté est tout autre. D'où la
mise en garde.
d'abord, merci pour la mise en garde,
for /r "C:\MonRep" %%a in ("pwg_high\*_pan.jpg") do echo "%%a"
--> Va lister tous les fichiers jpg se terminant par la chaîne "_pan" et se trouvant quelque part dans un sous-dossier "pwg_high" d'une source "c:\MonRep"
par contre
for /r "C:\MonRep" %%a in (pwg_high\image2_pan.jpg) do echo "%%a"
--> va fusionner la chaîne de caractères "pwg_high\image2_pan.jpg" aux sous-répértoires de "C:\MonRep"
on voie bien que peux de choses peuvent influencer sur le rendu final, mais la demande de l'OP est claire je cite "j'ai besoin de récupérer récursivement dans un dossier tous les fichier jpg contenant '_pan' et ce trouvant dans un sous-dossier 'pwg_high'"
je dis ceci car il faut savoir qu'un script en général, répond à une demande BIEN PRECISE..donc il ne faut pas généraliser..
aussi le problème ici n'est pas la flexibilité et la fiabilité de la boucle "FOR (dans cette discussion)" mais plutôt "les attentes de l'interesser du script" car si sa demande était par exemple: "j'ai besoin de récupérer dans un dossier un fichier 'image2_pan.jpg' et se trouvant dans un sous-dossier 'pwg_high'", alors mon script va changer de forme...
enfin, je crois qu'il n'y a pas un script/programme PARFAIT il y'aurra toujours un MAIS quelques part...mais c'est ça la vie et le scripting continue..
Envoyé par
maxim_um
CQFD
c'est ??
Partager