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
GELÖST

Datei aus Zip extrahieren, Inhalt konkatenieren

Frage Entwicklung Batch & Shell

Mitglied: Viprex

Viprex (Level 1) - Jetzt verbinden

26.06.2009, aktualisiert 08.07.2009, 7728 Aufrufe, 3 Kommentare

Folgende Problemstellung:

Es liegen Tausende Zip Dateien vor mit unterschiedlichem Namen (Datum). In den Zip Dateien ist eine Ordnerstruktur enthalten, die immer gleich ist. In einem Unterordner befindet sich eine Datei. In dieser Datei sind, getrennt durch Tab, einige Spalte und Zeilen vorhanden. Manchmal ist diese Datei auch nicht vorhanden!

Ziel: Alle Dokumente hintereinander weg aneinander reihen. Das Zieldokument soll also den Inhalt der entsprechenden Dateien beinhalten, wenn es geht weiterhin korrekt formatiert.

Hat jemand eine Idee, wie ich das automatisiert lösen kann? Ich kann ein bisschen Java und ein bisschen CMD-Batch. Gerne auch fertige Lösungen, die ich mir dann zusammenstückeln muss.

Edit: Sorry, ein paar mehr Infos: Betriebssystem: Eigentlich Windows XP, kann aber Linux sein (da kenne ich mich weniger gut aus). Tools: Egal, ich kann alles nutzen und installieren. Wenn es nicht zu teuer ist, kaufe ich auch gerne etwas.
Die enthaltene Ordnerstruktur:

-Backup_20090319_030323.zip
-- Ordner "S2"
-- Ordner "S3"
-- Ordner "S5"
-- Ordner "S7"
-- Ordner "S10"
--- Datei "S10.fal"
-- Ordner "S12"
-- Ordner "S14"

Inhalt Datei ungefähr so:
53380056 2009-06-26 895332202 1 0 4 0 522052 EUR 0 DE 0
Und weitere dieser Zeilen, immer verschieden viele.
Mitglied: empreality
26.06.2009 um 14:26 Uhr
Das sollte mit AutoIT vernünftig und schnell zu lösen sein.

Neben AutoIT selbst musst du dir dann noch einen Kommandozeilen-Entpacker wie PKUNZIP besorgen und dann

- Ergebnisdatei im Append-Modus öffnen
- Liste aller ZIPs in ein Array und dieses dann durchlaufen
- ZIP in temporären Pfad entpacken und Datei im Lesemodus öffnen
- Inhalt in Ergebnisdatei schreiben
- temporären Kram löschen
- Ergebnisdatei schließen
Bitte warten ..
Mitglied: LotPings
26.06.2009 um 16:08 Uhr
Hallo Viprex.

Ist die gesuchte Datei immer im Ordner S10 mit Namen S10.fal ?
Oder welche Kriterien beschreiben die Datei?

Grundsätzlich eignet sich jeder Entpacker ob jetzt Winzip cmdline, 7zip, infozip etc. oder nit vbscript gehts ggfs auch nativ.

Meine Favoriten wären
Batch for schleife über alle 'dir *zip ' und mit
"7z.exe e Archiv.zip s10.fal" dateien extrahieren und an das Sammeldokument anhängen.

Ein grundsätzliches Problem sehe ich nicht.

Gruß
LotPings
Bitte warten ..
Mitglied: Viprex
07.07.2009 um 10:06 Uhr
Herzlichen Dank für die Ratschläge und sorry für die späte Antwort. Hatte in der Zwischenzeit anderes zu tun.

Hier die Lösung, wie ich es jetzt gemacht habe. Funktioniert problemlos.

01.
@echo off&setlocal  
02.
@echo off&setlocal  
03.
for /F "delims=" %%A in ('dir /s/b *.zip') do call :extract "%%~fA"  
04.
GOTO :EOF 
05.
 
06.
:extract  
07.
"C:\Programme\7-Zip\7z.exe" e %1 "s10\s10.fal" 
08.
type s10.fal >> s10_all.csv 
09.
del s10.fal 
10.
GOTO :EOF
Nochmal herzlichen Dank!
Bitte warten ..
Neuester Wissensbeitrag
Off Topic

"Ich habe nichts zu verbergen"

(2)

Erfahrungsbericht von FA-jka zum Thema Off Topic ...

Ähnliche Inhalte
Linux
gelöst URL und Username aus HTML-Datei extrahieren - sed, grep (4)

Frage von plutowitsch zum Thema Linux ...

Windows Server
gelöst Windows 2012R2 kann Datei nicht löschen (2)

Frage von Akcent zum Thema Windows Server ...

Windows Server
Powershell - suche nach gelöschter Datei aus LOG (3)

Frage von krischeu zum Thema Windows Server ...

Heiß diskutierte Inhalte
Linux Netzwerk
gelöst DHCP vergibt keine Adressen (32)

Frage von Maik82 zum Thema Linux Netzwerk ...

Apache Server
gelöst Lets Encrypt SSL mit Apache2 (20)

Frage von banane31 zum Thema Apache Server ...

Hardware
gelöst PCI-Express-Adapterfrage (14)

Frage von DerWoWusste zum Thema Hardware ...