Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Via Batch im Unterordner Zip Dateien entpacken und anschließend löschen

Frage Entwicklung Batch & Shell

Mitglied: Thomas1982

Thomas1982 (Level 1) - Jetzt verbinden

22.11.2013 um 14:01 Uhr, 3370 Aufrufe, 4 Kommentare, 1 Danke

Hallo zusammen,

ich habe folgendes Szenario: Auf einem Windows Server werden nachts 56 Dateien als Datensicherung bereitgestellt. Diese werden morgens im selben Ordner manuell entpackt, die zip Dateien gelöscht.

Dateistruktur sieht in etwa so aus:
Hauptordner
(...)
|-20131119
|-20131120
|-20131121
(...)
In diesen Unterordner liegen dann am jeweiligen Tag die 56 zip Dateien. Zum entpacken nutze ich 7zip.

Nun habe ich folgendes programmiert:

@echo off

for /f "delims=" %%f in ('dir . /B /O:-N') do (


for /f "delims=" %%x in ('dir "%%f\*.zip" /B') do (
C:\Programme\7-Zip\7z.exe x "%%f\*.zip" -o"%%f\*"
for /F "delims=" %%a in ('dir /b /aD') do del /Q "%%a\*.zip"
)
)
goto :end
)
:end

TEST.CMD >> %d%Log.log

Er macht, was er soll: Er entpackt und löscht danach (oder währenddessen??) die zip Dateien... ABER: Er sagt mir dann ständig danach "Datei nicht gefunden" obwohl er doch fertig ist! Irgendwo hängt die Schleife und wiederholt sich warum auch immer.
Könnt ihr den Fehler entdecken? Ich glaube ich bin grad "Code-Blind"

Die Ausgabe sieht wie folgt aus:

C:\Users\[Mein Name]\Desktop\Testordner>TEST.CMD
Datei nicht gefunden
Datei nicht gefunden
Datei nicht gefunden
Datei nicht gefunden

7-Zip 4.65 Copyright (c) 1999-2009 Igor Pavlov 2009-02-03

Processing archive: 20130709\Logs_sB1.20130709.zip

Extracting sB1_MODUL1_MAIL_20130709.log
Extracting sB1_MODUL2_MAILAUSSENDER_20130709.log
Extracting sB1_MODUL3_M3_20130709.log
Extracting sB1_MODULPV_20130709.log

Everything is Ok

Processing archive: 20130709\Logs_sB2.20130709.zip

Extracting sB2_MODUL1_MAIL_20130709.log
Extracting sB2_MODUL3_M3_20130709.log

Everything is Ok

Processing archive: 20130709\Logs_sB3.20130709.zip

Extracting sB3_MODUL1_MAIL_20130709.log
Extracting sB3_MODUL3_M3_20130709.log

Everything is Ok

Processing archive: 20130709\Logs_sB4.20130709.zip

Extracting sB4_MODUL1_MAIL_20130709.log
Extracting sB4_MODUL3_M3_20130709.log

Everything is Ok

Processing archive: 20130709\Logs_sB5.20130709.zip

Extracting sB5_MODUL1_MAIL_20130709.log
Extracting sB5_MODUL3_M3_20130709.log

Everything is Ok

Processing archive: 20130709\Logs_sB6.20130709.zip

Extracting sB6_MODUL1_MAIL_20130709.log
Extracting sB6_MODUL3_M3_20130709.log

Everything is Ok

Archives: 6
Files: 14
Size: 288648779
Compressed: 12476200

7-Zip 4.65 Copyright (c) 1999-2009 Igor Pavlov 2009-02-03


Error:
there is no such archive
C:\Users\[Mein Name]\Desktop\Testordner\20130709\*.zip konnte nicht gefun
den werden

7-Zip 4.65 Copyright (c) 1999-2009 Igor Pavlov 2009-02-03


Error:
there is no such archive
C:\Users\[Mein Name]\Desktop\Testordner\20130709\*.zip konnte nicht gefun
den werden

7-Zip 4.65 Copyright (c) 1999-2009 Igor Pavlov 2009-02-03


Error:
there is no such archive
C:\Users\[Mein Name]\Desktop\Testordner\20130709\*.zip konnte nicht gefun
den werden

7-Zip 4.65 Copyright (c) 1999-2009 Igor Pavlov 2009-02-03


Error:
there is no such archive
C:\Users\[Mein Name]\Desktop\Testordner\20130709\*.zip konnte nicht gefun
den werden

7-Zip 4.65 Copyright (c) 1999-2009 Igor Pavlov 2009-02-03


Error:
there is no such archive
C:\Users\[Mein Name]\Desktop\Testordner\20130709\*.zip konnte nicht gefun
den werden
Datei nicht gefunden
Datei nicht gefunden
Datei nicht gefunden
Datei nicht gefunden
Datei nicht gefunden
(...)


Vorab Vielen Dank und
Viele Grüße
Thomas
Mitglied: Endoro
22.11.2013 um 18:11 Uhr
Hey Thomas, in deiner ersten for-Schleife fehlt ein Parameter: dir /B /O-N /AD , sonst werden auch Dateien gefunden und die haben keine Unterordner
lg.
Bitte warten ..
Mitglied: Thomas1982
25.11.2013 um 10:19 Uhr
Zitat von Endoro:

Hey Thomas, in deiner ersten for-Schleife fehlt ein Parameter: dir /B /O-N /AD , sonst werden auch Dateien gefunden und die
haben keine Unterordner
lg.

Hallo Endoro,

schonmal vielen Dank, ich habe den Parameter geändert. Leider passiert aber nichts anderes, wenn ich die CMD dann starte: Er entpackt die Dateien, löscht sie und dann erscheint wieder der Error dass er die Datei nicht finden kann. Wie in einer Dauerschleife (Siehe ausgabe oben) Ich muss dann mit Strg+C abbrechen.

Habe ich die Schleifen irgendwie falsch positioniert? Für mich sieht das richtig aus.. Oder kann man irgendwie sagen, dass wenn er keine *.zip mehr findet beenden soll...?

LG
Thomas
Bitte warten ..
Mitglied: Thomas1982
25.11.2013 um 10:27 Uhr
btw nochmal der aktuelle Code:

@echo off

for /f "delims=" %%f in ('dir /B /O-N /aD') do (


for /f "delims=" %%x in ('dir "%%f\*.zip" /B') do (
C:\Programme\7-Zip\7z.exe x "%%f\*.zip" -o"%%f\*"
for /F "delims=" %%a in ('dir /b /aD') do del /Q "%%a\*.zip"
)
)
goto :end
)
:end


TEST.CMD >> %d%Log.log
Bitte warten ..
Mitglied: WinCobold
25.11.2013 um 16:00 Uhr
Hallo Thomas,

Wenn du das "echo off" rausnimst, siehst du vielleicht selbst, was schief läuft (Tipp: du machst dir kein X für ein U vor, sondern ein f und ein a für ein x).

Gruß
WinCobold
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

(1)

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (13)

Frage von JayyyH zum Thema Switche und Hubs ...

DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...

Backup
Clients als Server missbrauchen? (9)

Frage von 1410640014 zum Thema Backup ...

Windows Server
Mailserver auf Windows Server 2012 (9)

Frage von StefanT81 zum Thema Windows Server ...