Verifier la presence d'un repertoire et de sa taille mini

Fermé
Melanie7 - 18 mai 2015 à 08:50
 KarineBreizh - 14 oct. 2015 à 22:59
Bonjour,

Je dois concevoir un batch qui verifie la presence d'un repertoire à la date du jour et sa taille qui doit etre de 100 Ko mini.

Pour la presence du repertoire, j'ai fait ceci :

@echo off
set fdate=%date:~6,4%%date:~3,2%%date:~0,2%
set cible=%fdate%_05-00
if exist C:\%cible% goto ENVOIMAIL


Par contre, c'est pour verifier sa taille que je n'arrive à ecrire. Je pense qu'il faut utiliser le '~~zcible' mais je ne vois pas comment l'inclure.

Merci pour votre aide
A voir également:

2 réponses

dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
18 mai 2015 à 12:34
hello
~z retourne la taille d'un fichier, pas d'un répertoire
ceci calcule la somme de la taille de tout les fichiers
@echo off
setlocal enabledelayedexpansion
set c=0
for %%a in (*.*) do set /a c+=%%~za
echo !c!
0
Merci pour ta réponse Dub.

J'ai fait un test avec mon repertoire C:\temp mais la valeur qui ressort n'est pas la même que la taille indiquée par Windows.
Le script renvoie 98304 et Windows 820 Mo....

Est ce normal ?

Merci
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
Modifié par dubcek le 18/05/2015 à 15:38
le script ne traite pas les sous-répertoires, je vais modifier
essayer
@echo off
setlocal enabledelayedexpansion
set c=0
for /R %%a in (*.*) do set /a c+=%%~za
echo !c!
0
Melanie7 > dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024
19 mai 2015 à 14:25
Merci dub.
Quand je l'execute, "il manque un operande" revient en boucle....
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
19 mai 2015 à 14:56
montre ton script
0
Melanie7 > dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024
19 mai 2015 à 15:42
@echo off
setlocal enabledelayedexpansion
set c=0
for /R %%a in (C:\Temp) do set /a c+=%%~za
echo !c!
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
19 mai 2015 à 16:33
changer la ligne for
for /R C:\Temp  %%a in (*.*) do set /a c+=%%~za 
0