Veröffentlicht 16. Januar 200916 j Guten Tag, ich bin auf der Suche nach einem Skript oder Tool, mit dem ich in der Lage bin Ordner zu löschen die älter als 14 Tage sind. Ein Tool für Dateien (DelAge32) habe ich, aber mir wäre es lieber wenn ich direkt das ganze Verzeichnis mit wegschmeißen kann. Kennt da einer was?
16. Januar 200916 j Hallo dondy, dieser Ausschnitt eines vbs-Scripts läuft auf unserem Backup-Server und wird per geplanten Task automatisch ausgeführt. Hier der vbs-Code: Option Explicit Dim intZahl ' Dim strExtension ' Dim intTage ' Dim objDatei ' Dim objFSO ' Dim objOrdner ' Dim strOrdner ' '======================================== 'Sicherungen <Ordnername> werden gelöscht '======================================== Set objFSO = CreateObject("Scripting.FileSystemObject") strOrdner = "<Ordnerpfad>" strExtension = "" intTage = <Anzahl der Tage nachdem der Ordner gelöscht wird> 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 intZahl = intZahl + 1 End If Next 'WScript.Echo intZahl & " Dateien gelöscht." Einfach diesen Text als "blabla.vbs" abspeichern und ausführen. Achtung: <Ordnername>, <Ordnerpfad> und <Anzahl der Tage nachdem der Ordner gelöscht wird> müssen durch die richtigen Werte ersetzt werden. Grüße Alexander
16. Oktober 200915 j Hey Hornoche (wie kommt man auf denNamen??), hätte da ne Frage zu deinem Script. Wertet das jedes Datum der eigenen Dateien einzeln aus? Oder schaut es nur das Datum des Ordners und schaut nicht weiter rein, wenn der noch zu neu ist? Wir erstellen hier für jede Sicherung einen Ordner, die zu sichernden Daten behalten aber ihr original-Datum, damit im Falle einer Rücksicherung das ganze wieder paßt. Und ich möchte halt mit dem Script automatisch den ältesten Sicherungsordner rauswerfen, damit Platz für den neuen ist. Bisher hab ich das immer per Hand gemacht, vor jedem Wochenende. Aber sowas kann man ja auch mal vergessen, oder für nen Krankheitsfall oder sowas... CU zepho
5. Mai 201114 j Ich weiß das das Thema schon steinalt ist, aber bin gerade am selben problem! das oben genannte script funktioniert nicht und mim umschreiben hab ich ein paar probleme... Ziel ist es Ordner samt Unterordner...Dateien nach Datum zu löschen!
5. Mai 201114 j DateDiff("d", objDatei.DateLastModified, Now) > intTage Then objDatei.Delete damit löscht er die dateien, die 14 tage älter sind (wenn du es denn oben mit 14 tagen angegben hast)
5. Mai 201114 j Dateien löschen ist kein problem und hab ich auch schon gestern erledigt. ich muss jetzt allerdings komplette Ordner löschen die älter als X Tage sind!
5. Mai 201114 j so schaut mein code momentan aus: Option Explicit Dim intZahl Dim strExtension Dim intTage Dim objsubfolder Dim objFSO Dim objOrdner Dim strOrdner Set objFSO = CreateObject("Scripting.FileSystemObject") strOrdner = "C:\Users\SPapenfuss\Documents\" intTage = 14 Set objOrdner = objFSO.GetFolder(strOrdner) intZahl = 0 For Each objsubfolder In objOrdner.SubFolders If DateDiff("d", objsubfolder.DateLastModified, Now) > intTage Then objsubfolder.Delete intZahl = intZahl + 1 End If Next WScript.Echo intZahl & " Ordner gelöscht."
6. Mai 201114 j Und hier mal wieder ein kleiner Ausritt in die Powershellwelt: $Folder = deinordner $Now = Get-Date $DateDiff = $Now.AddDays(-14) Get-ChildItem $Folder | Where-Object { $_.LastWriteTime -le $DateDiff} | Remove-Item -Recurse
6. Mai 201114 j so wirklich schlau werd ich daraus jetzt nicht, wäre nett wenn du es noch ein bisschen erklären könntest. Aber trotzdem danke für die Antwort =)
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.