suppression dossier avec condition suivant nom des dossiers
Bonjour,
je viens vous énoncer mon problème, j'ai un script qui me permet de supprimer des fichiers/dossiers datant de x jours. script qui fonctionne très bien.
seulement voilà, j'aimerais y ajouter des conditions, notamment, interdire la suppression de certains dossier portant le nom xxx.
mais je suis un peu perdue, je sais pas par où commencer et comment faire pour imposer ce critère (et si c'est possible bien sur)
je vous montre le script à l'heure actuelle :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
sPath = "C:\temp\"
sOlderThanDays = 15
sReportFiles = "Les fichiers suivants ont été nettoyés : " & vbCrLf
sReportFilesCount = 0
sReportFolders = "Les dossiers suivants ont été nettoyés : " & vbCrLf
sReportFoldersCount = 0
' Compute old date
dOldDate = dateadd("d", 0 - sOlderThanDays, Now())
' Get base folder
Set oFSO = CreateObject("Scripting.FileSystemObject" )
'On appelle la fonction de nettoyage
CleanFolder(sPath)
Sub CleanFolder(sCurrentPath)
' select current folder
Set oFolder = oFSO.GetFolder(sCurrentPath)
' Get subfolders
Set oSubFolders = oFolder.SubFolders
' Do a recursive call if it contains subfolders
For Each oCurrentFolder in oSubFolders
CleanFolder oCurrentFolder.Path
Next
' Get files in current folder
Set oFiles = oFolder.Files
' Delete old Files
For Each oCurrentFile in oFiles
If oCurrentFile.DateCreated < dOldDate AND _
oCurrentFile.DateLastModified < dOldDate Then
sReportFiles = sReportFiles & " - " & oCurrentFile.Path & "\" & oCurrentFile.Name & vbCrLf
oCurrentFile.Delete True
sReportFilesCount = sReportFilesCount + 1
End If
Next
Set oFiles = oFolder.Files
If oFiles.Count = 0 AND oFolder.Path & "\" <> sPath Then
sReportFolders = sReportFolders & " - " & oFolder.Path & "\" & vbCrLf
oFolder.Delete True
sReportFoldersCount = sReportFoldersCount + 1
End If
End Sub
MsgBox(Cstr(sReportFilesCount) + " fichiers ont ete effaces et " + Cstr(sReportFoldersCount) + " dossiers ont ete effaces") |
je tiens à préciser que je débutes dans la programmation vbs, le script n'est pas de moi (mais je le comprends, c'est préférable... :) )
si vous avez une idée pour m'aiguiller je suis prenante, je sèche un peu là.
et si je suis pas très clair, dite-le moi.
Merci