Problème sur un script d'ici

Résolu
Signaler
Messages postés
9
Date d'inscription
vendredi 28 février 2003
Statut
Membre
Dernière intervention
10 avril 2008
-
Messages postés
1854
Date d'inscription
jeudi 23 mai 2002
Statut
Membre
Dernière intervention
24 juin 2018
-
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 :

http://www.vbfrance.com/codes/SUPPRIME-FICHIERS-DATANT-PLUS-15-JOURS_33195.aspx

Mais il ne fonctionne pas, j'ai une érreur à la ligne 33 et comme le VBS je connais pas je fais appel à vous.

Merci beaucoup pour toute l'aide que vous pourrez m'apporter

seb

11 réponses

Messages postés
1854
Date d'inscription
jeudi 23 mai 2002
Statut
Membre
Dernière intervention
24 juin 2018
26
 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

jean-marc
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
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
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
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]

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
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.

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Salut,
On veux bien aider mais dit nous au moins quelle est l'erreur?

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
9
Date d'inscription
vendredi 28 février 2003
Statut
Membre
Dernière intervention
10 avril 2008

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 :

Merci :)

seb
Messages postés
9
Date d'inscription
vendredi 28 février 2003
Statut
Membre
Dernière intervention
10 avril 2008

Merci Jean marc,

j'ai mis ton code dans un fichier .vbs

j'execute le fichier et et ça me renvoie une fenetre avec la liste des fichiers contenu dans mon dossier mais ça ne les supprime pas... :(

Merci à toi

seb
Messages postés
9
Date d'inscription
vendredi 28 février 2003
Statut
Membre
Dernière intervention
10 avril 2008

autant pour moi il fallait décommenter la ligne qui efface le fichier lol

Cependant, comment désactiver le ptit pop up qui récapitule les fichiers qui ont été supprimé ?

seb
Messages postés
9
Date d'inscription
vendredi 28 février 2003
Statut
Membre
Dernière intervention
10 avril 2008

Super Génial julien !!!!

Est ce que je peux abuser de votre temps en vous demandant que le script ne supprime que les fichiers ayant l'extension .tar.gz ?

seb
Messages postés
9
Date d'inscription
vendredi 28 février 2003
Statut
Membre
Dernière intervention
10 avril 2008

C'est absolument génial !

Merci d'avoir pris sur votre temps pour m'aider, le script est parfait !!

Merci encore et à bientôt :)

seb
Messages postés
1854
Date d'inscription
jeudi 23 mai 2002
Statut
Membre
Dernière intervention
24 juin 2018
26
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.

Bonne continuation.

jean-marc