Batch: mit 7z (Commandline) Dateien in unterschiedliche Verzeichnisse entpacken


amn.ssy

Erfahrenes Mitglied
#1
mahlzeit,

ich versuche mich gerade an einer kleinen Batch und komme nicht weiter.
Was soll geschehen:
Im Verzeichnis c:\GMD\00 Data habe ich 4 Zip Dateien.
3 davon sollen ins Verzeichnis C:\GMD\Input\RAW entpackt werden.
Das 4., das mit dem Dateinamen IDD.zip endet soll ins Verzeichnis C:\GMD\Input\COA.
Die 7za habe ich unter C:\GMD\Bin liegen.


Versucht habe ich bisher dieses hier, bleibe jedoch schon an der Commandline Syntax für 7z hängen.
Woran fehlt es der 7z und wie bekommt man eine Verzeigung\Abfrage für die IDD.zip Datei hin?

Code:
@echo off & setlocal enableDelayedExpansion

TITLE GMD - Unzip V.0.1
color 0a
mode 55,6

set root=%~dp0
set data=%~dp000 data\
set inc=%~dp0input\coa\
set inr=%~dp0input\raw\
set bin=%~dp0bin\

for %%f in (%data%*.zip) do (%bin%7za e -y -o%inr%)

pause
Grüße
opiwahn
 

amn.ssy

Erfahrenes Mitglied
#2
Habs zwischenzeitlich hinbekommen:

Code:
@echo off & setlocal enableDelayedExpansion

TITLE GMD - Unzip V.0.1
color 0a
mode 55,6

set root=%~dp0
set data=%~dp0data\
set inc=%~dp0input\coa\
set inr=%~dp0input\raw\
set bin=%~dp0bin\

for %%f in (%data%*.zip) do (
  set "name=%%~nxf"
  if /i "!name:~-7!" == "IDD.zip" (
    "%bin%7za" e -y -o"%inc%" "%%f"
  ) else (
    "%bin%7za" e -y -o"%inr%" "%%f"
  )
)
gruß
opiwahn