Déplacer des fichiers plus vieux que 10 jours
Posté : 07 avr. 2011 21:45
Bonjour,
J'ai un problème sur un PC sous Windows 2000 Pro, un logiciel génère des fichiers texte de quelques octets toutes les 60 secondes, ces fichiers sont utilisés par une autre machine mais aucune tâche ne les supprime. Le problème est que Windows empêche parfois la création des fichiers (problème de quantité de fichiers dans le dossier : environ 3000 au bout de quelques jours) et ça fait planter le poste suivant.
J'ai donc fait quelque recherches et j'ai trouvé un exécutable sous DOS qui s'appelle "forfiles.exe".
J'ai fait le script suivant :
Ce script fonctionne parfaitement bien sous Vista et Windows 7 car "forfiles.exe" est inclus dans les commandes DOS d'origine. Mon problème est que même avec des versions antérieures de cette commande trouvées sur le net, je n'arrive pas à la faire reconnaitre dans Windows 2000. Je ne trouve pas non plus de toolkit MS qui contienne cet executable.
Quelqu'un a t il une solution à me proposer ?
Merci d'avance pour votre aide !
Vincent
J'ai un problème sur un PC sous Windows 2000 Pro, un logiciel génère des fichiers texte de quelques octets toutes les 60 secondes, ces fichiers sont utilisés par une autre machine mais aucune tâche ne les supprime. Le problème est que Windows empêche parfois la création des fichiers (problème de quantité de fichiers dans le dossier : environ 3000 au bout de quelques jours) et ça fait planter le poste suivant.
J'ai donc fait quelque recherches et j'ai trouvé un exécutable sous DOS qui s'appelle "forfiles.exe".
J'ai fait le script suivant :
Code : Tout sélectionner
@echo off
rem Nettoyage/ Archivage des dossiers
rem Suppression des fichiers de plus de xx jours
rem Configuration
set path_a_nettoyer=C:\Data\
set nb_jours=10
rem Archivage des fichiers vieux de plus de %nb_jours% jours
forfiles /p %path_a_nettoyer% /m *.txt /c "cmd /c copy @file c:\Data\Archives\@file" /d -%nb_jours%
rem Suppression des fichiers vieux de plus de %nb_jours% jours
forfiles /p %path_a_nettoyer% /m *.txt /c "cmd /c del /q @file" /d -%nb_jours%
Quelqu'un a t il une solution à me proposer ?
Merci d'avance pour votre aide !
Vincent