PB rotation de dossier BAT

Fermé
jarjar4545 Messages postés 27 Date d'inscription jeudi 12 janvier 2012 Statut Membre Dernière intervention 11 novembre 2016 - 17 févr. 2014 à 21:33
jarjar4545 Messages postés 27 Date d'inscription jeudi 12 janvier 2012 Statut Membre Dernière intervention 11 novembre 2016 - 6 mars 2014 à 18:43
Bonjours,

Je suis en train de modifier mon script de sauvegarde et bath, j'ai rencontré un problème au niveau de la rotation des dossiers.
Je souhaité gardé une historisation sur 5 jours.
J'ai trouvé ce ci sur le net et je voudrai l'adapté pour supprimer les fichiers et les dossiers.

rem Cette variable définie le dossier qu'il faut purger :
set chemin="B:\Sauvegarde\Jeux"

rem Cette variable définie le nombre de jour que doivent être garder les fichiers:
set jours=5

forfiles /p %chemin% /s /d -%jours% /m *.* /c "cmd /c del @FILE"

Mon problème c'est que ce script surprime que les fichiers mais pas les dossiers.

Ci quel qu'un a une idée ou une solution,

Merci d'avance
A voir également:

5 réponses

dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
19 févr. 2014 à 09:07
il y a là dans les exemples, l'utilisation de @isdir
c'est une variable vraie ou fausse, pas un nom de fichier
https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/cc753551(v=ws.10)?redirectedfrom=MSDN
1
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
18 févr. 2014 à 12:50
hello
la variable @isdir de FORFILES permet des tester si le fichier est un répertoire
0
jarjar4545 Messages postés 27 Date d'inscription jeudi 12 janvier 2012 Statut Membre Dernière intervention 11 novembre 2016 14
18 févr. 2014 à 20:28
Bonjours dubcek et merci pour cette variable, malheureusement je n'est pas réussie a le faire marché correctement.

Pour commencer j'ai tester la commande suivant:


forfiles /p %chemin% /s /d -%jours% /m *.* /c "cmd /c del @isdir

Il me mes comme comme message:
Impossible de trouver "il affiche le chemin de la sources que je lui est renseigné".


Après j'ai essayer avec cette commende:


forfiles /p %chemin% /s /d -%jours% /m *.* /c "cmd /c rd @isdir

ou j'ai remplacer le "del" par un "rm"

et la il me mes comme message :

Le fichier spécifié est introuvable.


Aurai tu une idée ou une autre solution a mon problème.

Merci d'avance.
0
jarjar4545 Messages postés 27 Date d'inscription jeudi 12 janvier 2012 Statut Membre Dernière intervention 11 novembre 2016 14
19 févr. 2014 à 22:41
Bonjours Dubcek

Merci pour le lien

J'ai regarder le lien que tu ma donnée, j'ai fait des tests, mais après le True je n'arrive pas a mettre un RD pour supprimé les dossiers.

voila ce que sa donnes

@echo off
cls

rem VARIABLES / CONSTANTES :
rem ------------------------------------------------------------

rem Cette variable définie le dossier qu'il faut purger :
set chemin="B:\Sauvegarde"

rem Cette variable définie le nombre de jour que doivent être garder les fichiers:
set jours=1

rem ------------------------------------------------------------

forfiles /p %chemin% /s /d -%jours% /m *.* /c "cmd /c if @ISDIR==TRUE rd /S /Q"


J'ai trouver cette commande sur le Net, mais quand je me bas sur celle la il m'affiche que le premier dossier.


forfiles -pz:\ -d-30 -c"cmd /c if @ISDIR==TRUE echo @FILE"

Le site ou j'ai trouver cette commande

https://www.clubic.com/forum/t/effacer-automatiquement-dossiers-de-plus-de-x-jours/396467

Je pence que la commande dois être bonne, mais que je doit pas l'utiliser de la bonne façon.

Ci tu vois mon erreur ou ci tu a une autre solution

Merci d'avance.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jarjar4545 Messages postés 27 Date d'inscription jeudi 12 janvier 2012 Statut Membre Dernière intervention 11 novembre 2016 14
6 mars 2014 à 18:43
Bonjour,

Je reviens vers vous pour demandé de l'aide, de puis ce temps je suis toujours bloqué au même stade.

Merci d'avance.
0