[Batch] bestimmte Dateien löschen?

3 Antworten

Das ist einfach:

@move /y "*.pdf_old_*" "_old_"

Das ist schon die komplette Batch.

Wenn die regelmäßig ausgeführt werden soll, dann speicherst Du diese im selben Verzeichnis und lässt sie mit dem Task-Manager (Aufgabenplanung) ausführen.

Dort kannst Du auch einfach obige die Befehlszeile eingeben, aber dann musst Du den vollständigen Pfad angeben, z.B.:

move /y "C:\Pfad\zum\Log-Ordner\*.pdf_old_*" "C:\Pfad\zum\Log-Ordner\_old_"

Wenn Du das Aufpoppen des Consolen-Fensters verhindern willst, dann solltest Du aber die Batch-Lösung wählen und dazu eine LNK-Verknüpfung (im gleichen Verzeichnis) erstellen und hier dann unter Fensteroptionen "Minimiert" einstellen und dann im Task-Manager die Verknüpfung aufrufen.

schreurs1 
Fragesteller
 31.10.2018, 12:26

geht leider nicht, die bat sieht so aus:

@echo off

cd r:\

del *.pdf agent_calls_queue_specific[3].pdf_old_*

Es sollen alle PDF Dateien die "agent_calls_queue_specific[3].pdf_old_" enthalten gelöscht werden

0
MarkusGenervt  31.10.2018, 12:55
@schreurs1

Ups! Da hab ich nicht genau gelesen. Ich werd heute einfach nicht wach …

Ich hab "verschieben" gelesen … 😴

Aber das Prinzip ist dasselbe nur mit DEL anstatt mit MOVE. Der /Y Schalter erzwingt nur eine Sicherheits-Abfrage, die beim gewollten Löschen natürlich auch hinfällig ist.

Die ersten beiden Befehle sind auch nicht erforderlich, wenn man sich im selben Verzeichnis befindet oder das Verzeichnis im Muster angibt. und einfach das @ vorweg stellt.

0
cd /D "R:\"
del /F "agent_calls_queue_specific[3].pdf_old_*"
del *.pdf_old_*
schreurs1 
Fragesteller
 31.10.2018, 12:27

geht leider nicht, die bat sieht so aus:

@echo off

cd r:\

del *.pdf agent_calls_queue_specific[3].pdf_old_*

Es sollen alle PDF Dateien die "agent_calls_queue_specific[3].pdf_old_" enthalten gelöscht werden

0
Suboptimierer  31.10.2018, 13:14
@schreurs1

Wenn du nicht alle pdf-Dateien, die mit _old_ gekennzeichnet wurde, löschen willst, sondern nur die pdf-Dateien des Namens agent_calls_queue_specific[3].pdf, die mit _old_gekennzeichnet wurden, verlängerst du das Löschmuster einfach:

del "agent_calls_queue_specific[3].pdf_old_*"

Wenn die 3 in den eckigen Klammern dynamisch ist, setzt du dort auch noch einen Stern hinein:

del "agent_calls_queue_specific[*].pdf_old_*"
1