Citat:
Ursprungligen postat av sn0wman
Om jag vill packa upp samtliga .zip'ade filer som ligger nedpackade i X antal under directoryn till katalogen före dom är packade i hur går man tillväga då?
Ex.
C:\temp\test1\1\1.zip
C:\temp\test1\2\2.zip
ska packas upp till C:\temp\test1
medans
C:\temp\test2\1\1.zip
c:\temp\test2\2\2.zip
ska placeras i C:\temp\test2
Jag har alltså runt ~100 olika dirs som de ska packas upp till så att göra det manuellt och pecka vart de ska packas upp till blir jobbigt, men kontentan är att alla zippade filer ska packas upp till katalogen före de är packade till ".."
Nån som har någon bra ide?
Skapa en bat-fil, namge den till vad som helst, exempelvis ZipAll.bat. I denna fil lägger du till följande:
Kod:
@echo off
setlocal enableextensions enabledelayedexpansion
path=%PATH%
set root=%1
set root=%root:~%1
set root=%root:~0,-1%
for /F "delims==" %%d in ('dir /ogne /ad /b /s %root%') do (
echo Traitement du dossier : "%%d"
for /F "delims==" %%f in ('dir /b "%%d\*.zip"') do (
rem Processing.
set subfolder=~n%f
mkdir "%%d\%subfolder%"
rem Extract...
7za.exe e "%%d\%%f" -o"%%d\%subfolder%"
)
)
:Eof
endlocal
Kör sedan filen från DOS såhär: ZipAll.bat "C:\dinstartmapp"