hugoundertaker
Goto Top

Dateien von gestern per Batch löschen?

Hallo zusammen,

mein Problem ist, das ich relativ neu mit der Batch-Prorgammen arbeiten muss.
Nun das Problem:
Es laufen auf einen Laufwerk X in dem Verzeichnis Testdaten relativ viele Dateien auf. Diese sollen nun automatisch nach einem Tag gelöscht werden. Dieses würde ich gerne per Batch lösen, allerdings weiss ich nicht wie?
Die meisten Sachen im Netz sind gelöst oder funktionieren nicht.
Zusatzprogrammen wie robocopy, DelAge32 oder ForFiles sind nicht vorhanden bzw. dürfen nicht installiert werden. Also soll es lt. Vorgabe per Batch gemacht werden. Lieder sind dabei meine Kenntnisse sehr gering?

Bitte um Hilfe.

Danke
hugo

Content-ID: 186856

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

Ausgedruckt am: 22.11.2024 um 11:11 Uhr

DerWoWusste
DerWoWusste 21.06.2012 um 14:00:54 Uhr
Goto Top
Tag auch.

Um welche Betriebssysteme geht es denn?
Onitnarat
Onitnarat 21.06.2012 um 14:01:57 Uhr
Goto Top
Hi,
muss es direkt per Batch laufen oder geht auch VBS?

Gruß
Marcus
hugoundertaker
hugoundertaker 21.06.2012 um 14:03:51 Uhr
Goto Top
Hallo,

es ahndelt sich um Windows XP.

Danke.
hugoundertaker
hugoundertaker 21.06.2012 um 14:05:26 Uhr
Goto Top
Hallo,

lt. den Vorgaben eigentlich als Batch, soll dann per Taskmanager starten.
Ob VBS auf den Rechnern möglich ist, ist mir nicht bekannt.
ITLogger
ITLogger 21.06.2012 um 15:40:03 Uhr
Goto Top
Mal ne Frage:
Wenn Du täglich löschen willst bleiben doch im Endeffekt keine Daten in dem Ordner übrig bzw. es sollen nur Dateien im Ordner bleiben, die maximal einen Tag alt sind. Oder?

Warum löscht Du dann nicht einfach einmal täglich alle Dateien im Ordner per del und geplanten Task, ohne mühsam das Datum abfragen zu müssen? Z.B. als Abmeldescript oder vielleicht besser als geplanter Task irgendwann nachts?
hugoundertaker
hugoundertaker 21.06.2012 um 16:31:12 Uhr
Goto Top
Weil die Daten ständig, d. h. rund um die Uhr erstellt werden und ich natürlich die aktuellen Dateien nicht löschen darf sondern halt nur die Dateien vom Vortag löschen soll, damit das laufwerk nicht zu voll wird.
bastla
bastla 21.06.2012 um 16:43:29 Uhr
Goto Top
Hallo hugoundertaker!

Um mal Mailer2010 zu interpretieren: Wenn Du einen geplanten Task um 23:59 ausführst und zu diesem Zeitpunkt alle Dateien löschen lässt, sollte das doch relativ gut hinkommen ...
Ansonsten würde ich ebenfalls zu VBS raten - Batch only ist in diesem Fall (Datumsberechnung) eher mühsam - siehe Morgiges Datum in Batchdatei bestimmen ...

Sobald Du - so oder so - das Datum in einer Variablen %Gestern% hast, kannst Du einfach per
for /f "delims=" %%i in ('dir /ba-d X:\Testdaten') do for /f %%a in ("%%~ti") do if "%%a"=="%Gestern%" del "X:\Testdaten\%%i"
einzeln prüfen und löschen ...

Grüße
bastla
hugoundertaker
hugoundertaker 25.06.2012 um 09:31:15 Uhr
Goto Top
Hallo,

leider hatte ich die anderen Tage erstmal was anderes zu tun un dkonnte mich nicht weiter darum kümmern.

Natürlich, die Idee mit 23:59 einfach per Task löschen ist wie immer am naheliegensten und man kommt nicht drauf.
Aber für den Fall, das das doch nicht so gemacht werden soll, habe ich es jetzt auch per VBS so wie vorgesehen gemacht.

Dank an alle für die schnellen Antworten und die Hilfe.

Grüße
hugo