cs_Sebelec
Messages postés9Date d'inscriptionvendredi 28 février 2003StatutMembreDernière intervention10 avril 2008
-
27 mars 2008 à 11:21
cs_JMO
Messages postés1854Date d'inscriptionjeudi 23 mai 2002StatutMembreDernière intervention24 juin 2018
-
27 mars 2008 à 16:42
Bonjour,
J'ai un leger soucis avec un dossier sur mon serveur qui se rempli assez vite... j'aimerai supprimer les fichiers de plus de 7jours, j'ai donc trouvé ce script :
cs_JMO
Messages postés1854Date d'inscriptionjeudi 23 mai 2002StatutMembreDernière intervention24 juin 201827 27 mars 2008 à 12:44
Bonjour à tous,
Un simple fso ne suffirait-il pas ?
Option Explicit
'Constantes à modifier
Const cstPath = "F:\SCRIPTS\TEST" 'Dossier à modifier
Const cstNbreJour = 7
'------------------------------------------------
'Appeler la fonction pour lister l'arborescence du dossier
Call FnListeDossier(cstPath)
Function FnListeDossier(cstPath) 'Lister l'arborescence du dossier
On Error Resume Next
Dim objFso, objSubFolderItem, objSubFileItem
Set objFso = CreateObject("Scripting.FileSystemObject")
For Each objSubFolderItem In objFso.GetFolder(cstPath).SubFolders 'Traiter chaque sous-dossiers
FnListeDossier objSubFolderItem.Path 'Traiter les sous-dossiers
Next
For Each objSubFileItem In objFso.GetFolder(cstPath).Files 'Traiter chaque objText du répertoire
'Vérifier si la date de modification du fichier est < à la date paramétrée
If DateDiff("d", FormatDateTime(objSubFileItem.DateLastModified, 2),Date) >= cstNbreJour Then
MsgBox objSubFileItem.Path
'Supprimer le fichier
'''''''''' objFso.DeleteFile objSubFileItem.Path
End If
Next
Set objFso = Nothing
End Function
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 27 mars 2008 à 14:44
Re,
Cette ligne
MsgBox objSubFileItem.Path
deviendra
' MsgBox objSubFileItem.Path
(on la met en commentaire. ou on la supprime.)
@+: Ju£i?n Pensez: Réponse acceptée
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 27 mars 2008 à 15:39
Re,
regarde en gras
'Constantes à modifier
Const cstPath = "F:\SCRIPTS\TEST" 'Dossier à modifier
Const cstNbreJour = 7
'------------------------------------------------
'Appeler la fonction pour lister l'arborescence du dossier
Call FnListeDossier(cstPath)
Function FnListeDossier(cstPath) 'Lister l'arborescence du dossier
On Error Resume Next
Dim objFso, objSubFolderItem, objSubFileItem
Set objFso = CreateObject("Scripting.FileSystemObject")
For Each objSubFolderItem In objFso.GetFolder(cstPath).SubFolders 'Traiter chaque sous-dossiers
FnListeDossier objSubFolderItem.Path 'Traiter les sous-dossiers
Next
For Each objSubFileItem In objFso.GetFolder(cstPath).Files 'Traiter chaque objText du répertoire
'Vérifier si la date de modification du fichier est < à la date paramétrée
If DateDiff("d", FormatDateTime(objSubFileItem.DateLastModified, 2), Date) >= cstNbreJour Then
'SOit
'If fso.GetExtensionName(objSubFileItem.Path) = "gz" Then
'Supprimer le fichier
' objFso.DeleteFile objSubFileItem.Path
'End If
'SOIT
If InStr(1, objSubFileItem, ".tar.gz") <> 0 Then
'Supprimer le fichier
objFso.DeleteFile objSubFileItem.Path
End If
End If
Next
Set objFso = Nothing
End Function<hr />
, ----
[code.aspx?ID=41455 By Renfield]
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 27 mars 2008 à 15:58
Re,
Attends avant de partir,
Pense à appuyer sur réponse acceptée sur le OU les posts qui t'ont aidé.
Cela permet de "clore" le topic et d'indiquer aux autres la solution.
cs_Sebelec
Messages postés9Date d'inscriptionvendredi 28 février 2003StatutMembreDernière intervention10 avril 2008 27 mars 2008 à 11:42
Autant pour moi.
j'ai donc récupérer le .vbs avec le code.
lorsque je double click dessus il me lance l'explorateur pour choisir un dossier que je veux vider. je choisi le dossier et je clique sur OK et j'ai cette érreur :
cs_JMO
Messages postés1854Date d'inscriptionjeudi 23 mai 2002StatutMembreDernière intervention24 juin 201827 27 mars 2008 à 16:42
Re,
Salut Julien,
Merci pour la relève !!!
Je viens de re-tester le script wmi de
[auteur/MOHAX007/529341.aspx mohax007]. Aucune erreur at home, le delete file s'exécute bien dans folders et subfolders.