2010-07-06 4 views
2

j'ai une structure de dossiers avec un principal dossier parent contenant plusieurs sous-dossiers, et dans ces quelques PNGs, quelque chose comme:script batch pour Pngcrush tous les fichiers dans tous les sous-dossiers

.../data 

.../data/013523/ 
.../data/345343/ 
.../data/395338/ 

.../data/013523/filex.png 
.../data/013523/filey.png 
.../data/345343/filea.png 
.../data/345343/fileb.png 
.../data/345343/filec.png 

Je voudrais écraser tous ces Les fichiers PNG avec un script batch Windows ne connaissant que l'emplacement du dossier data parent (les noms de dossier et les noms png sont inconnus, il devrait simplement écraser tous les fichiers PNG dans tous les dossiers).

J'ai jeté un coup d'oeil à Drag and drop batch file for multiple files? mais cela n'a pas semblé être tout à fait ce que je recherchais.

Oh et aucune option de dénomination de fantaisie requise, écrasement sur place est très bien.

Répondre

5

bien

for /r ...\data %%x in (*.png) do pngcrush "%%x" 

devrait le faire.

Si le chemin de votre répertoire contient des espaces data quelque part, ce qui suit devrait fonctionner mieux, si:

pushd "...\data" 
for /r %%x in (*.png) do pngcrush "%%x" 
popd 
+0

Merci va essayer sous peu. –

+0

Merci beaucoup, ça a fonctionné parfaitement! –

Questions connexes