Je suis un aide-enseignant, et mon travail consiste à trier les laboratoires des étudiants dans leurs dossiers. Le format qu'ils tournent dans leurs fichiers est comme ceProgramme par lots pour trier automatiquement les fichiers zip dans des dossiers et les extraire
lastname_Labname.zip
Ce que je veux accomplir est d'avoir automatiquement ces fermetures éclair déplacés dans leurs dossiers dans un endroit différent. Ce qui suit ce format
- Lastname1
- Lastname2
- Lastname3
Enfin, je voudrais les fichiers zip à supprimer après.
Voici ce que j'ai jusqu'à présent:
Pour extraire les fichiers:
FOR /D /r %%F in ("*") DO (
pushd %CD%
cd %%F
FOR %%X in (*.rar *.zip) DO (
"C:\Program Files\7-zip\7z.exe" x "%%X"
pause
)
popd
)
Pour trier les fichiers:
@ECHO OFF
SETLOCAL
SET "sourcedir=C:\Something\Something"
SET "destdir=C:Somethign\Something"
FOR /f "delims=" %%a IN (
'dir /b /a-d "%sourcedir%\*.zip" '
) DO (
FOR /f "tokens=1delims=_-" %%b IN ("%%a") DO (
FOR /f "delims=" %%d IN (
'dir /b /ad "%destdir%\*%%b*" '
) DO (
MOVE "%%a" "%destdir%\%%d\"
)
)
)
GOTO :EOF
Je voudrais combiner ces fonctions, et supprime les zips après.
Malheureusement pour vous, ce site n'est pas un service de codage gratuit. Vous devez nous montrer _some_ effort. –
Cela devrait vous y parvenir ... https://ss64.com/nt/for_f.html –
@MattBall - On dirait que du code a été ajouté maintenant. – SomethingDark