Batch Auto entpacken mit Winrar.exe

jan4321

Lt. Commander
Registriert
Juli 2007
Beiträge
1.929
Hi,
Entweder stehe ich auf dem Schlauch, oder habe einen Denkfehler^^
ich hab ein Script geschrieben, was in allen Unterordnern die *.rar entpackt, funktioniert auch soweit, nur werden alle Daten nicht im Quell, sondern ein Verzeichnis darüber entpackt :freak:
Code:
set path="C:\Program Files\WinRAR\";%path%

For /F "delims=*" %%B IN ('dir /A:D /S /B') do (
FOR /F "delims=*" %%A IN ('dir /b /s *.rar') do (unrar x "%%A" "%%B")
)

ich sehe einfach nicht, was da falsch läuft^^

P.S

Also nach test hab ich herausgefunden, das:
1. das Script in seinem Jetzigen zustand immer in den 1. Ordner entpackt
2. das Script läuft im dauerloop, hört also nicht mehr auf^^

Ich schreib nicht oft Scripts, was mach ich falsch?^^
 
Zuletzt bearbeitet:
is doch langweilig XD
Selbst is der Admin, aber ich schreibe halt einfach zu wenig Scripte, als das ich als Netzwerk Admin da jetzt sehen würde, was da falsch läuft^^

Außerdem hat so eine .bat den vorteil, dass das mit jeder beliebigen RAR Version funktioniert^^
 
Zuletzt bearbeitet:
folder = der ordner der entpackt werden soll (alle unterordner werden dabei ebenfalls durchsucht
unrar = ordner in dem sich die umrar.exe befindet

dann hab ich zwei verschiedene arten von batch für dich:


1.
Code:
ORDNER\CD1\xx1.rar
ORDNER\CD2\xx2.rar

Dateien werden nach ORDNER entpackt
______________________________
set folder="C:\test"
set unrar="C:\Program Files\WinRAR\"
FOR /F %%I IN ('dir %folder% /S /B *.rar') DO %unrar%unrar x %%I %%~pI\..\

2.
Code:
ORDNER\CD1\xx1.rar
ORDNER\CD2\xx2.rar

Dateien werden nach ORDNER\CDX entpackt
______________________________
set folder="C:\test"
set unrar="C:\Program Files\WinRAR\"
FOR /F %%I IN ('dir %folder% /S /B *.rar') DO %unrar%unrar x %%I %%~pI
 
Zuletzt bearbeitet:
Ein Tipp von mir, das Script ins "Senden an" zu finden unter
Code:
C:\Users\<user>\AppData\Roaming\Microsoft\Windows\SendTo
Rest ergibt sich dann von selbst :)
 
Thx^^
Ich habe es nun ein wenig anders gemacht, funktioniert wunderbar, so bekomme ich keine Sehnenschneideentzündung beim entpacken mehr :cool_alt:

Code:
@echo off

set path="C:\Program Files\WinRAR\";%path%
     
FOR /F "delims=*" %%A IN ('dir /b /s *.rar') do unrar x -o- "%%A" "%%~dpA" 

FOR /F "delims=*" %%B IN ('dir /b /s *.r*') do del /F "%%B" 

FOR /F "delims=*" %%C IN ('dir /b /s *.sfv') do del /F "%%C"

Wer mir jetzt noch verärt, wie ich die del Operationen direkt nach dem entpacken hin bekommen, ist mein persönlicher Weinachsheld ;-)

Was mir gerade nur für nen Fehler aufgefallen ist:
Alles OK
Möchten Sie "B:\bla\blub\baba\*" löschen (J/N)?

Wenn ich das mit "N" bestätige geht das wunderbar.
Ist auch nur bei ein ganz paar Ordnern.
 
Zuletzt bearbeitet:
fu ck hatte ich ganz vergessen XD

Das hilft mir aber auch noch nicht weiter ;-)

Ich verstehe auch nicht, warum das immer nur bei machen Ordnern Auftritt, aber nicht bei allen^^
Ordnername zu lang? Gefallen dem Skript irgendwelche Zeichen im Ordnernamen nicht? Ich Checks einfach nicht^^

Ich hab gerade noch experimentiert, wenn ich den Ordnername des betreffenden Ordners ändere geht alles -.-

Was stört die shell den bitte an:
Alias.Die.Agentin.S04E17.Reines.Gewissen.GERMAN.DL.DUBBED.720p.WebHD.x264-TVP
??

Ist doch alles in " " gesetzt :-D

Und ehe hier jemand jammert: Ich besitze alle Staffeln der Serie in der DVD-Sammelbox, bin reisen Fan, auf HD gibt es die aber nicht und mein Upscalling sieht viel bescheidener aus, als das, was ich mir gezogen hab ;-)

Wer will kann ein Pic von mir mit der DVD-Box bekommen^^
 
wie wäre es mit
du muss vorher nur den pfad definieren
Code:
FOR /R %pfad% %%I IN (*.r*;) DO del /s %%I
 
Ok blind muss man sein XD
Die ganze zeit such ich nach so einer Option und übersehe die dann xD

Big THX
 
Zurück
Oben