Gestion des variables dans deux boucles imbriquées
Bonjour,
J'aimerais réaliser un batch qui compresse une liste de fichiers, avec mot de passe,
en créant un fichier ZIP par fichier original.
Exemple :
Liste de fichiers originaux
video01.mp4
video02.mp4
video03.mp4
Fichiers compressés résultants :
video01.zip
video02.zip
video03.zip
Le code suivant fonctionne, mais crée des fichiers "video01.mp4.zip", etc ;-)
Code:
1 2
| set /p var="Mot de passe ? "
for %%i in (*.mp4) do "c:\Program Files\7-Zip\7z.exe" a -tzip %%i.zip %%i -p%var% |
L'idée est donc d' "extraire" le nom du fichier initial sans l'extension "mp4",.
J'ai essayé ça :
Code:
1 2 3 4 5
| set /p var="Mot de passe ? "
for %%i in (*.mp4) do (
for /f "tokens=1,2 delims=." %%a in ("%i%") do set fn=%%a&set ft=%%b
"c:\Program Files\7-Zip\7z.exe" a -tzip %fn%.zip %%i -p%var%
) |
Mais là il me crée une seule archive nommée ... "zip" avec mes fichiers mp4 dedans.
Merci par avance de vos idées et suggestions.