Home
         Forum
         ADMGM
         Tools
         Scripts
       WSH
         Updater
  WSH Script - Delete Folders

  SH-Soft Home | Scripts | WSH

This script can be used to delete folders that are older then a defined ammount of days!

 

'######################################
'
'     SH-Soft.com
'     DeleteFolders.vbs
'######################################
'
' created by Martin Mueller
' mamueller@sh-soft.com
'
'######################################
'
 Version = "1.0.0.0"
' Last Modified:  20070912
' First Release:  20070912
'
'######################################
'
'
'On Error Resume Next



'*** Global settings ***
Set fso = CreateObject("Scripting.FileSystemObject")
Set logfile = fso.CreateTextFile("C:\folderdelete-"& Year(DATE) & Month(DATE) & Day(DATE) &".log", True)


'***************************************************************************************
'* Collect Data

NumberDays = 7
strPath = "---"

'***************************************************************************************
'* Header

WriteLog " SH-Soft.com Delete Folder Script"
WriteLog ""
WriteLog " created by Martin Müller"
WriteLog "  mamueller@sh-soft.com"
WriteLog ""
WriteLog " - Version: "& Version
WriteLog " - Deleting files older then "& NumberDays &" (days)"
WriteLog " - Searching folder: "& strPath
WriteLog ""
WriteLog ""

'***************************************************************************************
'* Start Program

DeleteFolders

'******************************************************************
'* DeleteFolders
'*
'* Version:   1.0.0
'* Last Modified:  20070912
'******************************************************************

SUB DeleteFolders
 IF fso.FolderExists(strPath) THEN
  Set objFolder = fso.GetFolder(strPath)
  Set colSubfolders = objFolder.Subfolders
  dateToday = Now()
  cntDelteFolders = 0
  
  FOR EACH objSubfolder IN colSubfolders
   WriteLog "Folder Name: "& objSubfolder.Name
   WriteLog "    created: "& objSubfolder.DateCreated
   'WriteLog "   modified: "& objSubfolder.DateLastModified
   dateFolder = objSubfolder.DateCreated
   IF dateFolder <= dateToday THEN
    daysOld = dateToday - dateFolder
    IF daysOld > NumberDays THEN
     cntDelteFolders = cntDelteFolders + 1
     fso.DeleteFolder(strPath &"\"& objSubfolder.Name)
     WriteLog "    --> Folder deleted: "& strPath &"\"& objSubfolder.Name &" !"
    ELSE
     WriteLog "    <-- This folder can stay here"
    END IF
   END IF
  NEXT
  
  WriteLog ""
  WriteLog ""
  WriteLog "################################################"
  WriteLog " Folders deleted: "& cntDelteFolders
 ELSE
  WriteLog "Folder does not exist:"& strPath &" stopping!"
 END IF  
END SUB


'******************************************************************
'* WriteLog
'*
'* Version:   1.1.1
'* Last Modified:  20070502
'******************************************************************

SUB WriteLog (LogEntry)
 logfile.WriteLine(NOW() &" - "& LogEntry)
END SUB

 



  © 2003 SH-SOFT