Article is written in the Dutch language…
Het onderstaande script heb ik geschreven om bestanden in een bepaalde directory verwijderen als ze ouder zijn dan een opgegeven aantal dagen. Het script is ontworpen ‘silent’ te draaien m.b.v. bijvoorbeeld de windows taskscheduler-service. Het resultaat van de actie en eventuele foutmeldingen worden in de windows eventlog geregistreerd.
*** Het gebruik van dit scripts en code van deze site is op eigen risico. Test scripts en code grondig voor ingebruikname en zorg ervoor dat je begrijpt wat er wordt uitgevoerd! | Use published scripts and code at your own risk and test thoroughly before usage. Make sure you understand te code! ***
'*********************************************************************
'bestandsnaam: SESSCLEAN.VBS
'geschreven_door: Tim van Kooten Niekerk
'versie: 11:39 22-2-2010
'info: CleanUp (session) bestanden ouder dan x dagen.
'info: Use at your own risk and test thoroughly before usage.
'*********************************************************************
'Procedure Settings (Settings en Declaraties)
option explicit
dim oFSO, oWSH, vEventLogHeader, vEventLogFooter
set oFSO = CreateObject("Scripting.FileSystemObject")
Set oWSH = WScript.CreateObject("Wscript.Shell")
vEventLogHeader = "SESSCLEAN.VBS" & vbCrLf
vEventLogFooter = vbCrLf & vbCrLf & "Info: Bestanden ouder dan een opgegeven aantal " & _
"dagen worden bij het starten van dit script verwijderd uit de " & _
"opgegeven directory."
'Functie fCleanUPDIR (Clean Up Session Dir)
function fCleanUPDir(vCleanUPDir,vDaysOld)
if oFSO.FolderExists(vCleanUPDir) then
if vDaysOld > 0 and vDaysOld < 100 then
dim vFolder1, vBestandsNaam, f1, vBestandsDate, vFilesDeleted
vFilesDeleted = 0
set vFolder1 = oFSO.GetFolder(vCleanUPDir)
set vFolder1 = vFolder1.Files
for each f1 in vFolder1
vBestandsNaam = f1.name
vBestandsDate = f1.datelastmodified
if IsDate(vBestandsDate) then
vBestandsDate = CDate(vBestandsDate)
if (now - vBestandsDate) > vDaysOld then
oFSO.DeleteFile(vCleanUPDir & "" & vBestandsNaam)
vFilesDeleted = vFilesDeleted + 1
end if
end if
next
'Schrijf de uitkomst en ingestelde waarden naar de eventlog als mededeling.
oWSH.LogEvent 0, vEventLogHeader & _
vFilesDeleted & " bestand(en) van ouder dan " & vDaysOld & _
" dag(en) verwijderd uit " & vCleanUPDir & vEventLogFooter
else
'Schrijf foutmelding naar de eventlog als waarschuwing
oWH.LogEvent 2, vEventLogHeader & _
"Opgegeven waarde (" & vDaysOld & " dag(en)) bevindt zich " & _
"buiten de scope van 0-100. Controleer de configuratie." & _
vEventLogFooter
end if
else
'Schrijf foutmelding naar de eventlog als waarschuwing
oWSH.LogEvent 2, vEventLogHeader & _
"Opgegeven Directory (" & vCleanUPDir & ") kon niet worden gevonden. " & _
"Controleer of de directory bestaat of op fouten in de configuratie." & _
vEventLogFooter
end if
end function
fCleanUPDir "D:Tempphpsession", 1
fCleanUPDir "D:Tempphpupload", 1
' Einde van script