Script de suppression automatique

Discussions sur le thème des logiciels informatiques autres que ceux déjà presents dans les forums.

Modérateur : Modérateurs

Répondre
Bejito26
Membre récent
Membre récent
Messages : 9
Enregistré le : 02 juin 2005, 23:00:00

Script de suppression automatique

Message par Bejito26 » 19 oct. 2005, 15:35:52

Bonjour a tous.

Je recherche actuellement le moyen de faire un script .bat ou .VBS si possible, permettant dasn un dossier défini de supprimer les fichiers vieux de plus de 48h.

Voila, si vous avez une solution ou le moindre truc qui pourrait m'aider
je vous en serz grandement reconnaissant.

;)

++

Titus
Modérateur
Modérateur
Messages : 7275
Enregistré le : 02 juin 2005, 23:00:00
Localisation : Bruxelles
Contact :

Message par Titus » 19 oct. 2005, 16:22:29

Salut,

Ces fichiers sont stockés dans un seul répertoire?
A+
Image
Ma configuration est ici, employez Google.

alain51
Membre hyperactif
Membre hyperactif
Messages : 1991
Enregistré le : 02 juin 2005, 23:00:00
Localisation : Châlons en Champagne

Message par alain51 » 19 oct. 2005, 16:36:49

Salut,

Un script de base, avec une extension bat, mais tu peux certainement le modifier :

Code : Tout sélectionner

RD /S /Q "C:\Documents and Settings\Votre_User\Local Settings\Historique"
RD /S /Q "C:\Documents and Settings\Votre_User\Local Settings\Temporary Internet Files"
RD /S /Q "C:\Documents and Settings\Votre_User\Local Settings\Temp"

RD /S /Q "C:\Documents and Settings\Default User\Local Settings\Historique"
RD /S /Q "C:\Documents and Settings\Default User\Local Settings\Temporary Internet Files"
RD /S /Q "C:\Documents and Settings\Default User\Local Settings\Temp"
La commande RD avec l’option /S va supprimer tous les répertoires et fichiers du répertoire spécifié en plus du répertoire lui-même. L’option /Q (pour Quiet) active le mode silencieux, c'est-à-dire qu’il n’y a pas de confirmation demandée lors de la suppression.

Tu mets ce fichier dans C:\WINDOWS\System32\GroupPolicy\Machine\Scripts\Shutdown.

Lance ensuite gpedit.msc (menu Démarrer, Exécuter… et tape gpedit.msc)
Dans la fenêtre de gauche, sélectionne Paramètres Windows puis Scripts (démarrage/arrêt). Dans la fenêtre de droite, double clique sur Arrêter le système et ajoute ton script.

Pour les 48 heures, je ne sais pas !
Mais tu peux regarder cette discussion.

Bejito26
Membre récent
Membre récent
Messages : 9
Enregistré le : 02 juin 2005, 23:00:00

Message par Bejito26 » 20 oct. 2005, 07:14:38

En fait on a des scanners réseaux qui enregistre sur

\\fr1srv57\scancompta
\\nomduserveur\repertoire specifique au scan (ici compta)

Pour éviter de surgarger le serveur on voulait mettre en place un script qui tourne automatiquement le soir (taches planifiés) pour supprimer les scan des utilisateurs datant de plus de 48h sur les 3 répertoires (1 pour chaque scanner).

Je vais tester ce qu'il propose la ou tu m'as envoyé alain.
Je vous tiens au courant.

++

Bejito26
Membre récent
Membre récent
Messages : 9
Enregistré le : 02 juin 2005, 23:00:00

Message par Bejito26 » 14 nov. 2005, 09:17:13

excusez le double-post.

Donc j'ai essayé de faire le script depuis ce qu'on m'a donné.
Le problème c'est que je ne suis pas super doué en VB.
Si quelqu'un pouvait m'aider à faire le script se serait sympa.

Merci d'avance

Edit : Oui Titus c'est bien celui que t'a posté en dessous qui sert de base.
En fait, le script doit être lancé pour supprimer les fichiers vieux de 48h dans un dossier réseau partagé, style \\fr1srv57\scan_compta
Modifié en dernier par Bejito26 le 14 nov. 2005, 11:54:26, modifié 1 fois.

Titus
Modérateur
Modérateur
Messages : 7275
Enregistré le : 02 juin 2005, 23:00:00
Localisation : Bruxelles
Contact :

Message par Titus » 14 nov. 2005, 11:36:20

Salut,

Je ne suis pas doué du tout en VB, mais c'est bien ce script-ci qui sert de base?

Code : Tout sélectionner

Function getExtension(strFileName)  
  Dim p
  p = RInStr(strFileName,".")
  If p > 0 Then getExtension = Mid(strFileName,p+1) Else getExtension = ""
End Function
 
Function delFiles(strPath,strExt,intDays)  
 Dim fs
 fs = New Scripting.FileSystemObject
 If fs.FolderExists(strPath) Then
   Dim folder
   folder = fs.GetFolder(strPath)
   If folder.Files.Count > 0 Then
     Dim nFiles
     nFiles = 0
     For Each checkedFile In folder.Files
       If getExtension(checkedFile.Name) = strExt And DateDiff("d",Now,checkedFile.DateCreated) >= intDays Then
         checkedFile.Delete True
         nFiles = nFiles + 1
       Else
         '*** le fichier n'a pas la bonne extension, on s'en fout
       End If
     Next
     delFiles = nFiles
   Else
     delFiles = -2
   End If
 Else
   delFiles = -1
 End If
End Function
Je me suis permis de le coller ici, cela peut donner des idées à un initié.
A+
Image
Ma configuration est ici, employez Google.

Répondre

Retourner vers « Autres Logiciels »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 51 invités