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-Key: 5854716184

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

Printed on: May 4, 2024 at 13:05 o'clock

Member: killtec
killtec Feb 05, 2023 at 12:41:27 (UTC)
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ß
Member: AlRoDiSa
AlRoDiSa Feb 05, 2023 updated at 13:57:31 (UTC)
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
Mitglied: 5175293307
Solution 5175293307 Feb 05, 2023 updated at 16:08:52 (UTC)
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