Extrahieren Sie rekursiv aus Archivdateien mit 7Zip in denselben Ordner, in dem sich die Archivdatei befindet
Sie können den -o
Schalter mit 7Zip verwenden, der den vollständigen Pfad des Ausgabeverzeichnisses für den Befehl extract angibt, um den Inhalt der entsprechenden Archivdateien zu extrahieren.
Sie können eine FOR / F- Schleife mit einem rekursiven DIR- Befehl verwenden, um die vollständigen Archivpfade zu durchlaufen und diese entsprechend an 7Zip zu übergeben, indem Sie Ersetzungen verwenden, um die Funktion so zu nutzen, wie Sie es benötigen.
Batch-Skript
@ECHO ON SET source=C:\Users\User\Desktop\Test FOR /F "TOKENS=*" %%F IN ('DIR /S /B "%source%\*.zip"') DO "C:\Program Files\7-Zip\7z.exe" x "%%~fF" -o"%%~pF\" FOR /F "TOKENS=*" %%F IN ('DIR /S /B "%source%\*.7z"') DO "C:\Program Files\7-Zip\7z.exe" x "%%~fF" -o"%%~pF\" FOR /F "TOKENS=*" %%F IN ('DIR /S /B "%source%\*.rar"') DO "C:\Program Files\7-Zip\7z.exe" x "%%~fF" -o"%%~pF\" EXIT
Weitere Ressourcen
- DIR
-
Darüber hinaus wurde die Ersetzung von FOR-Variablenreferenzen verbessert. Sie können jetzt die folgende optionale Syntax verwenden:
%~I - expands %I removing any surrounding quotes (") %~fI - expands %I to a fully qualified path name %~dI - expands %I to a drive letter only %~pI - expands %I to a path only %~nI - expands %I to a file name only %~xI - expands %I to a file extension only %~sI - expanded path contains short names only %~aI - expands %I to file attributes of file %~tI - expands %I to date/time of file %~zI - expands %I to size of file %~$PATH:I - searches the directories listed in the PATH environment variable and expands %I to the fully qualified name of the first one found. If the environment variable name is not defined or the file is not found by the search, then this modifier expands to the empty string