BloodySword 10 Geschrieben 22. Dezember 2008 Melden Teilen Geschrieben 22. Dezember 2008 Hallo, ich möchte gerne per BATCH und möglichst mit Bordmitteln und ohne VBS/JS Dateien löschen, die älter sind als das angegebene Datum oder Zeitspanne. Dazu habe ich folgenden Thread gefunden: http://www.mcseboard.de/windows-forum-allgemein-28/gezieltes-loeschen-ordnern-dateien-109911.html Leider hilft mir das nicht wirklich weiter. Ich lasse Backups erstellen in Form von RAR-Dateien. Wenn die existierenden älter sind als 2 Monate sollen sie gelöscht werden, um Speicherplatz zu sparen. Danke im Vorraus! Zitieren Link zu diesem Kommentar
Racer1000 10 Geschrieben 22. Dezember 2008 Melden Teilen Geschrieben 22. Dezember 2008 Hallo BloodSword Schau dir mal das Tool Robocopy von Microsoft an. Das kann genau das was Du machen willst. Racer Zitieren Link zu diesem Kommentar
GuentherH 61 Geschrieben 22. Dezember 2008 Melden Teilen Geschrieben 22. Dezember 2008 Hallo. Schau dir mal das Tool Robocopy von Microsoft an ... und hier ein Beispiel dazu - : www.SBSPraxis.de, Automatisches Bereinigen der LOG Verzeichnisse auf einem SBS 2003 Server : LG Günther Zitieren Link zu diesem Kommentar
NilsK 2.958 Geschrieben 22. Dezember 2008 Melden Teilen Geschrieben 22. Dezember 2008 Moin, ... und falls es doch was mit Skript sein darf: faq-o-matic.net Alte Dateien löschen Gruß, Nils Zitieren Link zu diesem Kommentar
BloodySword 10 Geschrieben 22. Dezember 2008 Autor Melden Teilen Geschrieben 22. Dezember 2008 Da gefällt mir dann doch die Variante von NilsK besser, da ich dann keine extra .exe brauche. Option Explicit Dim intZahl ' Dim strExtension ' Dim intTage ' Dim objDatei ' Dim objFSO ' Dim objOrdner ' Dim strOrdner ' Set objFSO = CreateObject("Scripting.FileSystemObject") strOrdner = command$ strExtension = "exe" intTage = 56 Set objOrdner = objFSO.GetFolder(strOrdner) intZahl = 0 For Each objDatei In objOrdner.Files If LCase(Right(objDatei.name, Len(strExtension))) = LCase(strExtension) _ And DateDiff("d", objDatei.DateLastModified, Now) > intTage Then objDatei.Delete WScript.Echo "Lösche " & objDatei.name intZahl = intZahl + 1 End If Next So richtig? Zitieren Link zu diesem Kommentar
NilsK 2.958 Geschrieben 22. Dezember 2008 Melden Teilen Geschrieben 22. Dezember 2008 Moin, strOrdner = command$[...] So richtig? nö. strOrdner sollte schon den absoluten Pfad enthalten und muss darüber hinaus den Wert in Anführungsstrichen haben (siehe die Vorlage). Sonst sollte es laufen. Ach so, und du solltest es mit cscript aufrufen, sonst wirst du ziemlich viele Boxen wegklicken müssen. Gruß, Nils Zitieren Link zu diesem Kommentar
BloodySword 10 Geschrieben 22. Dezember 2008 Autor Melden Teilen Geschrieben 22. Dezember 2008 Klar lasse ich es mit cscript... Hab's nun raus. Es sollte nämlich alles per Script-Argumente einlesen: Option Explicit Dim intZahl Dim strExtension Dim intTage Dim objDatei Dim objFSO Dim objOrdner Dim strOrdner Set objFSO = CreateObject("Scripting.FileSystemObject") strOrdner = Wscript.Arguments(0) strExtension = Wscript.Arguments(1) intTage = Wscript.Arguments(2) Set objOrdner = objFSO.GetFolder(strOrdner) intZahl = 0 For Each objDatei In objOrdner.Files If LCase(Right(objDatei.name, Len(strExtension))) = LCase(strExtension) _ And DateDiff("d", objDatei.DateLastModified, Now) > intTage Then objDatei.Delete WScript.Echo "Lösche " & objDatei.name intZahl = intZahl + 1 End If Next WScript.Echo intZahl & " Dateien gelöscht." Zitieren Link zu diesem Kommentar
mad-max79 11 Geschrieben 23. Dezember 2008 Melden Teilen Geschrieben 23. Dezember 2008 hi; ich kann dof empfehlen. Ist gang einfach zu konfigurieren... Link Gruß Michael Zitieren Link zu diesem Kommentar
BloodySword 10 Geschrieben 23. Dezember 2008 Autor Melden Teilen Geschrieben 23. Dezember 2008 Das Tool ist auch interessant. Werde ich mir auch mal ansehen ^^. Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.