inmate003
Goto Top

2 Dateien in einem Ordner in 1 Zip matchen

Hallo zusammen,

bin hier wahrscheinlich falsch. Ich hab ein problem das ich gerne lösen würde und hoffe auf eure Hilfe.
Es handelt sich um ca. 5000 Dateien in einem Ordner mit 2500.jpg's und 2500.bmp's.

Diese Dateil liegen in einem Ordner: abcd.jpg abcd.bmp efgh.jpg efgh.bmp ijkl.jpg ijkl.bmp

nun möchte ich jeweils abcd.zip und efgh.zip und ijkl.zip

Jemand eine Idee wie ich das hinbekomm ? Bzw. wenn ich hier falsch bin in welchem Forum ich das am besten prüfen kann ?

Vielen Dank

Content-ID: 185434

Url: https://administrator.de/contentid/185434

Ausgedruckt am: 25.11.2024 um 02:11 Uhr

MrNetman
MrNetman 24.05.2012 um 11:12:56 Uhr
Goto Top
Hi inmate,
Musste es zweimal lesen um es zu verstehen.

Es liegen Also Fotos mit gleichem Namen aber in unterschiedlichen Formaten vor und du möchtest sie in ein gemeinsames Archiv packen, dass den gleichen Namen hat.
Einfach: die beiden Dateien rechts anklicken (wie z.B. mit Filzip) und packen. Der Name wird automatisch von einer der beiden Dateien genommen, die ja gleich sind.
Ich vermute, das erfordert jetzt aber schon eine Glaskugel, du möchtest die einzelnen Bilder nicht auch noch getrennt aufbewahren.
Das erfordert somit ein Script für das Erstellen der zip-Dateien nach Prüfung der Namensgleicheit und nachfoglendem Löschen der Ausgangsdateien. Swohl 7Zip als auch das erwähnte Filzip lassen sich in Batchdateien verarbeiten.

Tipps:
Dateien in einem Ordner nacheinander einzeln zippen, wie definiere ich die zu zippende Datei? (Batch, DOS)
Dateinamen via batch script auslesen, Datei zippen und anschliessend in den ausgelesenen Namen umbenennen
oder der letzte Link, der deine Anfrage sehr detailliert beschreibt
Gleiche Dateinamen verzippen mit Batch

Gruß
Netman
inmate003
inmate003 24.05.2012 um 11:20:59 Uhr
Goto Top
Ja im genau du hast es richtig verstanden. Sorry für die blöde ausdrucksweiße.

hab jetzt was gefunden:

FOR every 'filename.JPG' you DO want 7Z to create an archive 'filename.ZIP' containing both 'filename.JPG' and 'filename.EPS'? Try... FOR %F IN (*.jpg) DO 7Z a "%~nF.zip" "%~nF.jpg" "%~nF.eps"

sagen wir mal ich hab ein ordner
100018 ->Ordner
100018.jpg
213451 ->Ordner
213451.jpg

Leider hab ich überhaupt kein plan von Script sprachen oder sonstiges. Aber ein Freund meinte das dieses Script richtig wär aber es nicht mit Ordnern geht.

Hast du eventuell eine Idee ?
Lochkartenstanzer
Lochkartenstanzer 24.05.2012 um 11:42:27 Uhr
Goto Top
MMoin,

Mein Vorschlag mit der unix-toolchain (Unter Windows z.B. mit cygwin verfügbar):

ls *.jpg | sed -e "s:.jpg$::g" | xargs -l1 -I XXXX zip XXXX.zip XXXX.jpg XXXX.bmp


und fertich.

lks
pieh-ejdsch
pieh-ejdsch 24.05.2012 aktualisiert um 11:55:08 Uhr
Goto Top
moin inmate,

Du bist hier genau richtig.

So wie ich Dich Verstanden habe, hast Du in einer Ebene mehrere Unterordner in denen sich Namenspaare mit verschieden Extensions befinden.
Gleiche Namen sollen ins gleichnamige Archiv.

Da ja der Schalter A beim Kompressionsprogramm Hinzufügen bedeutet sollte es ja so genügen:
for /r "D:\Ordner mit den Unterordnern" %i in (*.jpg *.eps *.bmp) do 7Z a "%~dpni.zip" "%~i"  

Gruß Phil
mak-xxl
mak-xxl 24.05.2012 aktualisiert um 12:14:19 Uhr
Goto Top
Moin inmate003,

oder, wenn in einem Ordner viele jpg- und bmp-Dateien liegen, die bei Namensgleichheit in ein Archiv sollen, dann etwa so auf der Befehlszeile (in dem Ordner):

for /r "D:\Ordner" %i in (*.jpg) do 7Z.exe a "%~ni.7z" "%~nxi" "%~ni.bmp"

Freundliche Grüße von der Insel - Mario
Skyemugen
Skyemugen 24.05.2012 um 15:38:51 Uhr
Goto Top
Aloha,

@phil & Mario

wenn ihr ihm noch dazu schreiben würdet, dass er eure Zeile(n) im CMD auszuführen hat oder die Prozente doppelt gestalten soll, für eine Batchdatei ... dann müsste man nicht mit der Hoffnung leben, dass ein Freund es ihm mitteilen muss face-wink

greetz André
cyber40014
cyber40014 25.05.2012 um 00:10:33 Uhr
Goto Top
Musst du diese Aufgabe mehrfach ausführen?
Ist Speicherplatz begrenzt oder sind die Daten seher groß?
Wenn Sin 7 Indexdienst für die Ordner aktivieren,
Suchen nach abcd.* strg+A und zippen

Bei einer automatisierung würde ich ein batch nutzen dass die dateien temporär in einen ordner schmeisst. Den zippen und wieder löschen.
sonst musst du schon ein größeres skript schreiben.

lg
Skyemugen
Skyemugen 25.05.2012 um 08:24:29 Uhr
Goto Top
Zitat von @cyber40014:
Bei einer automatisierung würde ich ein batch nutzen dass die dateien temporär in einen ordner schmeisst. Den zippen und
wieder löschen.
sonst musst du schon ein größeres skript schreiben.

... mal die Antworten von Phil und Mario gelesen oder einfach nur sinnlos drauf los gepostet?

Temporär? Größeres Skript? Eventuell doch mal lieber nachts schlafen?
pieh-ejdsch
pieh-ejdsch 25.05.2012 um 09:25:04 Uhr
Goto Top
moin,
Zitat von @cyber40014:
Suchen nach abcd.* strg+A und zippen

Es handelt sich um ca. 5000 Dateien in einem Ordner mit 2500.jpg's und 2500.bmp's.
naja 2500 mal tippen, suchen und zippen
ist doch schöner als einer Zeile Code die Aufgabe zu überlassen. face-wink
Zitat von @inmate003:
hab jetzt was gefunden:
Try... FOR %F IN (*.jpg) DO 7Z a "%~nF.zip" "%~nF.jpg" "%~nF.eps"
Leider hab ich überhaupt kein plan von Script sprachen oder sonstiges.
Was nicht unbedingt heisst, es muss ein Batch sein. Die Scriptsprache wird in der CMD-Line auch benutzt.
Darüber hat sich inmate aber noch nicht geäussert.

Gruß Phil
cyber40014
cyber40014 25.05.2012 um 17:52:56 Uhr
Goto Top
Oh eventuell habe ich es falsch verstanden.
Ich dachte, es wären 5000 Dateien in einer Ordnerstruktur, verschiedener Typen und mit nicht so vielen Namen.

Selbstverständlich hängt es stark davon ab ob es nun am Ende z.b. 26 zips werden mit je einer A.jpg und A.bmp bis Z.jpg und Z.bmp oder nur 3 (wie in seinem Beispiel)

Ich hatte angenommen, dass es sich um recht wenig verschiedene Dateinamen handelt.
Selbstverständlich gebe ich dir recht, dass ab einem gewissen Punkt ein Script jedweder Art viel besser ist.

OT:
Allerdings wollte ich auch auf die Tatsache hinweisen, dass gerne ein Script für Dinge genutzt wird, die man Manuell beinah genausoschnell bewerkstelligen kann.

(Besonders wenn diese dann automatisiert gestartet werden und jedesmal ins System gefrickelt wurden, kann es irgendwann mal zu 40 oder mehr batches in den automatisierten Aufgaben kommen.
Wenn die Batches dann auch noch mit A1 - C14.bat benannt wurden, wirds richtig toll xD)

face-smile

lg

Chris
pieh-ejdsch
pieh-ejdsch 25.05.2012 aktualisiert um 20:01:01 Uhr
Goto Top
hallo Chris,
[OT]
Wenn Du aber "Manuell machen" einem Script vorziehst, ist die Dauer der Aufgabe davon abhängig wie oft die Durchführung geschehen soll und wie die Konfiguration davor gemacht worden ist(siehe Indexdienst). 2500 mal die Suche zu benutzten und drei; vier; fünf Shortcuts zu benutzen um ein Archiv zu vervollständigen -ne, da hätt ich sinnvolleres vor.

Für die Klammer - ist eine Ordentliche Dokumentation immer von Vorteil um gefrickel zu vermeiden. face-smile
[/OT]

Gruß Phil