uncleb
Goto Top

Mein erster Umgang mit Batch

Morgen Community,
Seit Stunden durchforste ich Google aber mein vermeintlich einfacher Batch Befehlt will nicht klappen..
Kurz worum es geht, ich verleihe Fotoboxen die Software erstellt die verschiedensten Ordner mit den jeweiligen Dateien, nur die wenigsten davon sind für mich relevant, bislang habe ich die Dateien die nicht benötigt werden über die Suche gelöscht

Im Pictures Verzeichnis werden Ordner mit dem Eventnamen erstellt, zB:
C:\Users\UncleB\Pictures\Event1
C:\Users\UncleB\Pictures\Event2

In jedem Event Ordner befindet sich der Unterordner "Prints" hier werden die gleichen Bilder mit 2 verschiedenen Dateinamen gespeichert zB bild1_1x.jp und bild1_2x.jpg

Was will ich nun, ALLE _2x.jpg in den Unterordner C:\Users\UncleB\Pictures\*\Prints löschen.
Im selben Ordner (Prints) befindet sich zusätzlich der Unterordner "thumb" dieser soll komplett inkl. Inhalt gelöscht werden.
Mein Ansatz sieht so aus:
@Echo off

del „C:\Users\UncleB\Pictures\*\Prints\*_2x.jpg“ /s /f /q
del „C:\Users\UncleB\Pictures\*\Prints\thumb“ /s /f /q

Nur ist hier wohl die Syntax falsch? Zumindest passiert beim ausführen nichts...

Evtl. kann mir ja hier jemand weiterhelfen face-smile

Edit:
So klappt es jetzt schon mal

@Echo off

del /s /f /q C:\Users\UncleB\Pictures\test\Prints\*2x.jpg
rd /s /q C:\Users\UncleB\Pictures\test\Prints\thumb

Nur sollen ALLE Ordner (in diesem Fall) in /test durchsucht werden. Kann ich hier nicht einfach \test\*\Prints.. schreiben?

Content-ID: 5854716184

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

Ausgedruckt am: 22.11.2024 um 07:11 Uhr

killtec
killtec 05.02.2023 um 13:41:27 Uhr
Goto Top
Hi,
schau doch mal nach der Powershell und mache das damit. Du kannst dann nach dem Ordner Prints suchen und das dann an remove-item Pipen und das löschen was du brauchst. Dürfte damit auch ein Einzieler sein.

Tipp: GCI und remove-item

Gruß
AlRoDiSa
AlRoDiSa 05.02.2023 aktualisiert um 14:57:31 Uhr
Goto Top
Moin

Versuch mal eine Schleife, Beispiel:

for /f "tokens=*" %%f in ('dir /s /b /a-d "C:\Users\UncleB\Pictures\test\*_2x.jpg"') do del "%%f"  

Viel Erfolg

PS: schau auch mal in BATCH - Alle Unterordner durchsuchen und bestimmte Dateien löschen
oder
Per Batch nach bestimmten Ordnern und Dateien suchen

Wer suchet, der findet.

face-wink
5175293307
Lösung 5175293307 05.02.2023 aktualisiert um 17:08:52 Uhr
Goto Top
Jepp nimm gleich die PowerShell, as easy as
remove-item "C:\Users\UncleB\Pictures\*\Prints\*_2x.jpg" -force -verbose  
remove-item "C:\Users\UncleB\Pictures\*\Prints\thumb" -recurse -force -verbose