这是一个 vbs 文件,可以满足您的要求。
NumberOfDays = 180 'anything older than this many days will be removed
TempFolderPath = "C:\Users\" 'location of main folder, (deletes folders inside here)
XPTempFolderPath = "C:\Documents and Settings\"
On Error Resume Next
Dim fso, objFolder, objFolderB
Set fso = CreateObject("Scripting.FileSystemObject")
Set objFolder = fso.GetFolder(TempFolderPath)
Set objFolderB = fso.GetFolder(XPTempFolderPath)
'Win 7
'DateCreated or DateLastModified can be used
FOR EACH fldr in objFolder.SubFolders
IF DateDiff("d", fldr.DateLastModified,Now) > NumberOfDays AND NOT isexception(fldr.name) Then
fso.DeleteFolder fldr.path, TRUE
END IF
NEXT
'XP
'DateCreated or DateLastModified can be used
FOR EACH fldr in objFolderB.SubFolders
IF DateDiff("d", fldr.DateLastModified,Now) > NumberOfDays AND NOT isexception(fldr.name) Then
fso.DeleteFolder fldr.path, TRUE
END IF
NEXT
'Put name of folder to NOT delete in "true" section
'The Else blank false, deletes everything else
FUNCTION isException(BYVAL foldername)
SELECT CASE foldername
CASE "Administrator"
isException = TRUE
CASE "All Users"
isException = TRUE
CASE "Default User"
isException = TRUE
CASE "Default"
isException = TRUE
CASE "HPADMIN"
isException = TRUE
CASE "ittech"
isException = TRUE
CASE "Public"
isException = TRUE
CASE "Guest"
isException = TRUE
CASE "LocalService"
isException = TRUE
CASE "NetworkService"
isException = TRUE
CASE ELSE
isException = FALSE
END SELECT
END FUNCTION
Set fso = nothing
Set objFolder = nothing
Set objFile = nothing
Set objSubfolder = nothing