automatisches entpacken im selben verzeichnis
Moderators: Hacker, Stefan2, white
automatisches entpacken im selben verzeichnis
Ich suche dringend eine Möglichkeit um hunderte gepackte Dateien in ihrem jeweiligen Verzeichnis zu entpacken.
Beispiel : Es existieren ca 100 Verzeichnisse mit völlig unterschiedlichen Verzeichnisnamen vor.
Darin befindet sich jeweils eine größere Anzahl gepackter Dateien (rar oder zip).
Das Ziel ist: Mit möglichst wenig Aufwand alle Dateien so zu entpacken, daß die entpackten Dateien sich hinterher im gleichen Verzeichnis wie bisher befinden, nur halt jetzt entpackt.
Ich hatte schon mal hier einen Thread eröffnet, allerdings funktioniert das alles nicht:
http://ghisler.ch/board/viewtopic.php?t=18882
Es gab mal hier: http://www.ghisler.ch/board/viewtopic.php?t=4932 ein VB-Script, mit dem per Suche ausgewählte Dateien automatisch ein Verzeichnis höher verschoben werden. Würde das nicht irgendwie umzuschreiben sein ? Nur das halt nicht verschoben, sondern ins gleiche Verzeichnis entpackt wird.
Leider habe ich Null Ahnung von VB.
frogtie
Beispiel : Es existieren ca 100 Verzeichnisse mit völlig unterschiedlichen Verzeichnisnamen vor.
Darin befindet sich jeweils eine größere Anzahl gepackter Dateien (rar oder zip).
Das Ziel ist: Mit möglichst wenig Aufwand alle Dateien so zu entpacken, daß die entpackten Dateien sich hinterher im gleichen Verzeichnis wie bisher befinden, nur halt jetzt entpackt.
Ich hatte schon mal hier einen Thread eröffnet, allerdings funktioniert das alles nicht:
http://ghisler.ch/board/viewtopic.php?t=18882
Es gab mal hier: http://www.ghisler.ch/board/viewtopic.php?t=4932 ein VB-Script, mit dem per Suche ausgewählte Dateien automatisch ein Verzeichnis höher verschoben werden. Würde das nicht irgendwie umzuschreiben sein ? Nur das halt nicht verschoben, sondern ins gleiche Verzeichnis entpackt wird.
Leider habe ich Null Ahnung von VB.
frogtie
Spontan hätte ich gedacht, dass man mit ALT+F7 einfach nach den Archiven sucht und das Ergebnis ins Panel übergibt.
Dann kann man ja eigentlich die Dateien mit ALT+F9 entpacken...
Mit einem leeren Zielpfad bei auspacken, sollte das Archiv eigentlich in das Verzeichnis dieses Archivs ausgepackt werden.
Das geht aber wohl nicht mit Ergebnislisten, wie es scheint.
Ein Bug?!
Dann kann man ja eigentlich die Dateien mit ALT+F9 entpacken...
Mit einem leeren Zielpfad bei auspacken, sollte das Archiv eigentlich in das Verzeichnis dieses Archivs ausgepackt werden.
Das geht aber wohl nicht mit Ergebnislisten, wie es scheint.
Ein Bug?!
Ich benutze für sowas WinRAR: Archive markieren, Kontextmenü aufrufen > Jedes Archiv in ein eigenes Verzeichnis entpacken. Ich hab bisher nicht versucht, das direkt im TC zu machen, weil ich eh immer WinRAR aufm Rechner hab.
MfG Dalai
MfG Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64
Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64
Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
Genau Dein Vorschlag führt ja nicht zum Ziel:Dalai wrote:Ich benutze für sowas WinRAR: Archive markieren, Kontextmenü aufrufen > Jedes Archiv in ein eigenes Verzeichnis entpacken. Ich hab bisher nicht versucht, das direkt im TC zu machen, weil ich eh immer WinRAR aufm Rechner hab.
MfG Dalai
Nach Deiner Methode hätte ich hinterher "tausende" neue Verzeichnisse.
Ich muß aber "hinterher" die gleiche Verzeichnisstruktur haben wie vorher, nur das die gepackten Dateien in ihren jeweiligen Verzeichnissen jetzt zusätzlich entpackt vorliegen.
Verständnisfrage: Sollen diese rar oder zip Dateien in den Verzeichnissen alle wahlos bzw. ohne eigenen Ordner in das jeweilige Verzeichnis in dem die zugrundeliegenden zip und rar liegen entpackt werden ?
Oder ist es nötig (um z.B. das gelöscht werden von doppelt vorhandener Dateien durch den Entpackvorgang zu vermeiden) diese in einen neu angelegten und jeweils dem rar oder zip Namen identisch benannten (Unter)Ordner auszupacken ?
Davon abgesehn beherrscht der TC mindestens genau dieselbe Funktion wie der Winrar. Sowohl (multiples) entpacken in im 2ten Fenster geöffneten Ziel/Wunschordner wie auch entpacken unter anlegen eines dem jeweiligen zip oder rar-Namen gleichen Ordners im Wunschordner.
Es ist zwar auch möglich sämtliche rar und zip Dateien die sich in einer Ordner-Unterordner Struktur oder sogar einer ganzen Partition befinden suchen zu lassen und diese dann in einem Rutsch mit den schon beschriebenen Optionen entpacken zu lassen.
Aber die gewünschte / gesuchte Option das gleich mehrere Herkunftstsordner auch bzw. wieder als die Zielordner genommen werden gibts meiner Meinung nach dabei nicht im TC. Ich habe bisher nur herausgefunden das der Zielordner limitiert ein einziger sein kann.
Die beschriebene Entpackmethode mit Anlegen eines der Benennung der zu entpackenden Datei identischen Ordnernamens (und dorthinein entpacken) funktioniert übrigens auch zuverlässig mit unverschlüsselten selbstentpackenden Exe Dateien .. nicht nur mit rar oder zip oder sonstigen handhabbaren Packformaten. Hab ich schon sehr schätzen gelernt beim entpacken der aus dem Netz gezogenen Treibersammlung für (m)ein neues Motherboard
Oder ist es nötig (um z.B. das gelöscht werden von doppelt vorhandener Dateien durch den Entpackvorgang zu vermeiden) diese in einen neu angelegten und jeweils dem rar oder zip Namen identisch benannten (Unter)Ordner auszupacken ?
Davon abgesehn beherrscht der TC mindestens genau dieselbe Funktion wie der Winrar. Sowohl (multiples) entpacken in im 2ten Fenster geöffneten Ziel/Wunschordner wie auch entpacken unter anlegen eines dem jeweiligen zip oder rar-Namen gleichen Ordners im Wunschordner.
Es ist zwar auch möglich sämtliche rar und zip Dateien die sich in einer Ordner-Unterordner Struktur oder sogar einer ganzen Partition befinden suchen zu lassen und diese dann in einem Rutsch mit den schon beschriebenen Optionen entpacken zu lassen.
Aber die gewünschte / gesuchte Option das gleich mehrere Herkunftstsordner auch bzw. wieder als die Zielordner genommen werden gibts meiner Meinung nach dabei nicht im TC. Ich habe bisher nur herausgefunden das der Zielordner limitiert ein einziger sein kann.
Die beschriebene Entpackmethode mit Anlegen eines der Benennung der zu entpackenden Datei identischen Ordnernamens (und dorthinein entpacken) funktioniert übrigens auch zuverlässig mit unverschlüsselten selbstentpackenden Exe Dateien .. nicht nur mit rar oder zip oder sonstigen handhabbaren Packformaten. Hab ich schon sehr schätzen gelernt beim entpacken der aus dem Netz gezogenen Treibersammlung für (m)ein neues Motherboard

Folgendes als Entpack.cmd speichern:
Parallel dazu 7z.exe und 7z.dll.
Es werden nun sämtliche Zip-Dateien aus sämtlichen Unterordnern ins jeweilige Verzeichnis entpackt. Also nicht im Root-Verzeichnis ausführen!
Gehe von folgender Struktur aus:
C:\
- Archive\
- - ArchivOrdner01\Datei01.zip
- - ArchivOrdner02\Datei02.zip
usw
Die Batch also im Verzeichnis "Archive" ausführen.
Code: Select all
for /r . %%i in (*.zip) do 7z.exe e -o%%~di%%~pi %%i
Es werden nun sämtliche Zip-Dateien aus sämtlichen Unterordnern ins jeweilige Verzeichnis entpackt. Also nicht im Root-Verzeichnis ausführen!
Gehe von folgender Struktur aus:
C:\
- Archive\
- - ArchivOrdner01\Datei01.zip
- - ArchivOrdner02\Datei02.zip
usw
Die Batch also im Verzeichnis "Archive" ausführen.
Wäre es möglich, das ganze so zu verfassen, daß sowohl *.zip, als auch *.rar entpackt werden ?
Code: Select all
for /r . %%i in (*.zip *.rar) do 7z.exe e -o%%~di%%~pi %%i
Freut mich, daß es funtioniert hat.
Der FOR-Befehl ist sowas wie die eierlegende Wollmilchsau unter den DOS-Befehlen.
Einfach nen CMD starten und sich den Hilfetext von "for /?" einverleiben. Die Dokumentation ist durchwachsen. Die sehr nützlichen %~xi Variablen sind aber gut erklärt.
Noch zum Verständnis: die doppelten %% sind nur in einer Batch-Datei nötig, nicht jedoch direkt unter CMD.
Der FOR-Befehl ist sowas wie die eierlegende Wollmilchsau unter den DOS-Befehlen.
Einfach nen CMD starten und sich den Hilfetext von "for /?" einverleiben. Die Dokumentation ist durchwachsen. Die sehr nützlichen %~xi Variablen sind aber gut erklärt.
Noch zum Verständnis: die doppelten %% sind nur in einer Batch-Datei nötig, nicht jedoch direkt unter CMD.
Bekommt man das auch mit dem TC hin, daß man dierekt den internen Packer aufrufen kann?ZoSTeR wrote:Folgendes als Entpack.cmd speichern:Code: Select all
for /r . %%i in (*.zip) do 7z.exe e -o%%~di%%~pi %%i
Eigentlich blöde Frage, sonst müßte man ja nicht den 7z dafür nehmen, oder?
mf
Bankster - Word of the Year 2009
Hmm.... jetzt stellt sich mir ein neues Problem:
Ist es mit 7z auch möglich, die entpackten Dateien nicht einfach im jeweiligen Unterverzeichnis abzulegen, sondern ein neues Unterverzeichnis mit dem gleichen Namen wie die gepackte Datei zu erstellen, und dann dort die gepackten Dateien reinzulegen ??
(Quasi ähnlich der TC-Funktion "Jedes Archiv in separates Verzeichnis...")
Danke im Voraus
Ist es mit 7z auch möglich, die entpackten Dateien nicht einfach im jeweiligen Unterverzeichnis abzulegen, sondern ein neues Unterverzeichnis mit dem gleichen Namen wie die gepackte Datei zu erstellen, und dann dort die gepackten Dateien reinzulegen ??
(Quasi ähnlich der TC-Funktion "Jedes Archiv in separates Verzeichnis...")
Danke im Voraus
Dies kann man mit der Option -o* bewirken.
7-Zip Hilfe:
Syntax
-o{dir_path}
{dir_path}
This is the destination directory path. It's not required to end with a backslash. If you specify * in {dir_path}, 7-Zip substitutes that * character to archive name.
Oder in der Batch:
7-Zip Hilfe:
Syntax
-o{dir_path}
{dir_path}
This is the destination directory path. It's not required to end with a backslash. If you specify * in {dir_path}, 7-Zip substitutes that * character to archive name.
Oder in der Batch:
Code: Select all
for /r . %%i in (*.zip) do 7z.exe e -o%%~di%%~pi%%~ni %%i
Sorry, mit -o* krieg ich das nicht hin.....
Die entpack.cmd blitzt dann nur kurz einmal auf, und nichts passiert.
Ich habe aber gerade die Lösung durch rumprobieren selber gefunden:
Die entpack.cmd muss folgenden Inhalt haben:
Die entpack.cmd blitzt dann nur kurz einmal auf, und nichts passiert.
Ich habe aber gerade die Lösung durch rumprobieren selber gefunden:
Die entpack.cmd muss folgenden Inhalt haben:
Dann läufts einwandfrei. Also nur der Anhang "~%%ni" ist die Lösung.for /r . %%i in (*.zip *.rar) do 7z.exe e -o%%~di%%~pi%%~ni %%i