script saisie par DOS

script saisie par DOS - Shell/Batch - Programmation

Marsh Posté le 22-06-2007 à 11:49:26    

Bonjour  j’ai un pb pour gerer des fichiers  
   
je recois des fichiers un repertoire tout les jours  Ex: d:\backup_rep\nomjjmmaa_hh_mn.xxx  
ces fichiers ont une taille assez importante  
 
Mon Souhait est  de pouvoir créer un fichier batch qui me deplace tous les  fichiers  en ne gardant que les 5 derniers et m’effacer le  plus vieux  
 
Merci de votre aide  
   
Je suis à votre écoute pour toutes questions !  
 

Reply

Marsh Posté le 22-06-2007 à 11:49:26   

Reply

Marsh Posté le 22-06-2007 à 14:35:45    

Tu peux essayer quelque chose comme ça :

SET source="d:\backup_rep\nom*.*"
SET dest=d:\arch_backup_rep\
FOR /F "skip=5" %%f IN ('DIR /O:-D /A:-D /B %source%') DO (
   echo MOVE %%~ff %dest%
)


 
Jean-Pierre.

Reply

Marsh Posté le 26-06-2007 à 10:55:54    

j'ai fait le test avec ca mais pas de resultat pouvez vous m'en dire plus  
ATT: je suis un tout debutant !!!

Reply

Marsh Posté le 27-06-2007 à 17:47:47    

Tout d'abord, vérifie que tu as bien des fichiers présents à traiter.
Pour cela :

DIR d:\backup_rep\nom*.*


Tu peux aussi passer la commande utilisée dans le boucle FOR:

DIR /O:-D /A:-D /B d:\backup_rep\nom*.*


Ajoute la ligne suivant en début de ton batch et re-exécute le :

@ECHO ON


Donne nous les 10 premiéres lignes du résultat de la seconde commande DIR, ainsi que le résultat de l'exécution du batch.

Reply

Sujets relatifs:

Leave a Replay

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