[RESOLU] Suppression automatique de fichiers dans un dossier

Suppression automatique de fichiers dans un dossier [RESOLU] - Stockage/Sauvegarde - Windows & Software

Marsh Posté le 14-06-2011 à 16:34:46    

Bonjour,  
 
Sur une de mes serveurs je souhaiterai supprimer les fichiers ayant plus de x jours dans un dossier.
 
J'ai vu ce topic : http://forum.hardware.fr/hfr/Windo [...] 1016_1.htm.
Mais cela ne correspond pas tout à fait à ce que je souhaite. Là on supprime tous les fichiers, tous les x jours.
Je souhaite supprimer les fichiers ayant plus de x jours de manière à ne pas être polluer par trop d'historique.
 
Je souhaite faire cette manip sur un serveur Windows 2008.
Y a t il une possibilité en natif dans W2008, dans les paramètres des dossiers par exemple?  
Ou faut il passer par un script en donnant un paramètre de date, script que l'on lance tous les jours via une tâche planifiée ?
 
Merci pour votre aide.


Message édité par lopezmathieu le 15-06-2011 à 14:32:35
Reply

Marsh Posté le 14-06-2011 à 16:34:46   

Reply

Marsh Posté le 14-06-2011 à 21:02:46    

Avec un script en batch, tu peut faire cela.

Reply

Marsh Posté le 15-06-2011 à 09:31:33    

Oui il me semble, mais quel paramètre ajouter à la commande :  

del c:\test\*.*


Message édité par lopezmathieu le 15-06-2011 à 09:32:35
Reply

Marsh Posté le 15-06-2011 à 10:08:35    

un petit script que j'utilise pour compacter puis effacer les fichiers .csv, placé dans l:\VirusLogs qui ont plus de 92 jours :

 


Code :
  1. C:\Windows\System32\forfiles /M *.csv /D -92  /P "l:\VirusLogs" /C "cmd /c echo @path" > "l:\VirusLogs\list.txt"
  2. for /f "tokens=1-3 delims=." %%a in ("%date%" ) do (
  3. 7za a "l:\VirusLogs\%%b.7z" @"l:\VirusLogs\list.txt"
  4. )
  5. C:\Windows\System32\forfiles /M *.csv /D -92  /P "l:\VirusLogs" /C "cmd /c del @path"
 

Je suppose que juste la dernière commande doit être bonne pour toi


Message édité par Z_cool le 15-06-2011 à 10:12:20

---------------
#mais-chut
Reply

Marsh Posté le 15-06-2011 à 11:47:29    

Bouh, moi qui ne connais que très peu (pour ne pas dire pas du tout) ce langage, et bien je suis perdu.
Je vais essayer de me servir de ta dernière ligne pour voir si ça me donne des résultats.
Je te tiens au courant.

Reply

Marsh Posté le 15-06-2011 à 12:16:41    

Ligne 1 : liste tout les fichiers en *.csv dont la date de derneire modification remonte a plus de 92 jours dans le répertoire l:\VirusLog  et l'ecrit dans le fichier l:\VirusLogs\list.txt
 
Ligne 3 : Récupère le mois dans la date
Ligne 4 : compresse avec 7Zip tout les fichiers contenu dans  l:\VirusLogs\list.txt et les ajoute au fichier nommé "<mois>.7z"
Ligne 7 : forfiles liste tout les fichier *.csv dont la dernière modification remonte a plus de 92 jours dans le répertoire "l:\VirusLogs" et lance la commande pour effacer le fichier listé


---------------
#mais-chut
Reply

Marsh Posté le 15-06-2011 à 12:29:32    

Et bien je viens de tester avec seulement la dernière ligne, et ça fonctionne bien !  
J'ai pu lister tous les types de fichiers (car deux types possibles). Par contre ça ne supprimer pas les dossier, mais ce n'est pas un problème.
 

C:\Windows\System32\forfiles /M *.* /D -2  /P "c:\test" /C "cmd /c del @path"


 
J'ai plus qu'à planifier une petite tâche sur le serveur.
 
Merci beaucoup pour votre aide ! !

Reply

Marsh Posté le 15-06-2011 à 12:46:45    

Roh ...
Quand je met cette commande dans un fichier .bat, il n'y a pas d'action, même si j'exécute le fichier "en tant qu'administrateur".
Ou alors, c'est pas la bonne extension ?
 
Edit : parce qu'en parallèle de cela, si je copie colle ma commande dans l'invite de commande ou dans Power Shell, l'action s'effectue.


Message édité par lopezmathieu le 15-06-2011 à 12:47:32
Reply

Marsh Posté le 15-06-2011 à 12:51:17    

si tu lance le .bat a la main, il se passe quoi ?

 

il y a un message ?


Message édité par Z_cool le 15-06-2011 à 12:51:46

---------------
#mais-chut
Reply

Marsh Posté le 15-06-2011 à 12:54:23    

Non pas de message.
Si je double clique : j’aperçois une Invite de commande qui s'ouvre et disparaît immédiatement.
Si je lance en tant qu'admin : même chose sauf que j'ai une autorisation pour l'UAC. Mais derrière même comportement.
Et les fichiers ne sont pas supprimés.

Reply

Marsh Posté le 15-06-2011 à 12:54:23   

Reply

Marsh Posté le 15-06-2011 à 12:59:01    

lance une commande MSdos en mode admin et lance le .bat a partir de la.
 
la fenêtre restera ouverte et tu pourra voir ce qui s'y passe


---------------
#mais-chut
Reply

Marsh Posté le 15-06-2011 à 13:38:24    

J'ai une erreur quand j'appelle le .bat depuis l'invite.
Pourtant quand je copie colle le contenu dans l'invite, pas de problème, les fichiers se suppriment.
 
http://www.hebergementimages.com/images/3d1da0132b4df97fff2040b08617d878_suppr.png

Reply

Marsh Posté le 15-06-2011 à 13:59:30    

tu dois avoir un sale caractère au début de ton .bat.
 
 
fait voir un "more suppr.bat" ?


---------------
#mais-chut
Reply

Marsh Posté le 15-06-2011 à 14:18:53    

Ca me fait un truc pas très beau, avec un caractère bizarre au début (ligne 2).
 
Pourtant, quand j'édite le .bat, je ne vois pas ce caractère.
 
http://www.hebergementimages.com/images/6034e2be1a859b39bc39761de47511a2_suppr2.png
 
http://www.hebergementimages.com/images/0821ea6864c435ca5b47c55f80820548_suppr3.png

Reply

Marsh Posté le 15-06-2011 à 14:23:44    

oui, non la il est pas top ton fichier, recommence le
 
pour éviter ce genre de chose, retape le complétement


---------------
#mais-chut
Reply

Marsh Posté le 15-06-2011 à 14:32:18    

Génial !  
Bon c'est le trop grand nombre de copier/coller qu'il n'a pas du supporter.
 
Encore une fois merci, j'édite le titre pour le mettre en résolu !

Reply

Marsh Posté le 15-06-2011 à 16:45:18    

ou alors met un pause à la fin

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed