'v3.7***************************************************** ' File: DateienAltDelete.vbs ' Autor: dieseyer@gmx.de ' dieseyer.de ' ' Löscht alle Dateien, die seit einem bestimmten Datum ' nicht mehr geändert wurden '********************************************************* Option Explicit Dim Pfad, Alter Pfad = "d:\setup" Pfad = "." ' Verzeichnis, in dem sich das Skript befindet, Skript wird also auch gelöscht Pfad = "c:\temp" Alter = 365 ' Dateien, die seit xxx Tagen nicht geändert wurden MsgBox AltesLoeschen (Pfad, Alter ) 'Function Aufruf und Ergebnisanzeige AltesLoeschen "c:\temp", 100 'Function Aufruf OHNE Ergebnisanzeige ' ~~~~~~ WScript.Quit '********************************************************* Function AltesLoeschen (Pfad, Alter) ' Anfang '********************************************************* Dim fso, oFiles, i, Txt Alter = FormatDateTime( now() - Alter ,2) Set fso = WScript.CreateObject("Scripting.FileSystemObject") if not fso.FolderExists( Pfad ) then MsgBox UCase(Pfad) & " existiert nicht!", , WScript.ScriptName Exit Function End If AltesLoeschen = "In " & UCase( Pfad ) & " wurden vor dem " & Alter & " geändert Dateien gelöscht." & vbCRLF & vbCRLF Set oFiles = fso.GetFolder( Pfad ).Files For Each i In oFiles if DateDiff("d" , i.DateLastModified, Alter) > 0 then ' vor dem Alter geänderte Dateien Txt = i.path ' nach dem Löschen von i.Path ist auch i.Path gelöscht AltesLoeschen = AltesLoeschen & i.Name & " " & vbTab & FormatDateTime( i.DateLastModified ,2) On Error Resume Next fso.DeleteFile i.path, True On Error GoTo 0 If not fso.FileExists( Txt ) Then AltesLoeschen = AltesLoeschen & vbCRLF Else AltesLoeschen = AltesLoeschen & " nicht gelöscht." & vbCRLF End if End If Next Set oFiles = nothing Set fso = nothing End Function ' AltesLoeschen