Bonjour,
Dans un fichier batch, je cherche à obtenir la taille d'un fichier. Si celui-ci est à moins de 10ko, j'en empêche la copie.
Merci
Version imprimable
Bonjour,
Dans un fichier batch, je cherche à obtenir la taille d'un fichier. Si celui-ci est à moins de 10ko, j'en empêche la copie.
Merci
Salut,
pour quels OS ?
Une solution sous XP
Il te reste la derniére ligne à adapter 8)Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 @echo off cls rem recherche les fichiers d'une taille inférieure à Min octets set /A Min=10000 rem supprime les fichiers de travail Del %Temp%\t?.tmp rem affiche uniquement les fichiers, pas de séparateur pour la taille de fichier Dir /-c /A-d|sort /+12>%Temp%\T1.tmp rem supprime les 4 premiéres lignes For /F "skip=4 tokens=*" %%i in (%Temp%\T1.tmp) do echo %%i>>%Temp%\T2.tmp rem inverse le fichier Type %Temp%\T2.tmp |sort /+12 /R >%Temp%\T3.tmp rem supprime les 3 premiéres lignes ( à l'origine en fin de fichier). Difficile de les déterminer autrement For /F "skip=3 tokens=*" %%i IN (%Temp%\T3.tmp) Do echo %%i>>%Temp%\T4.tmp rem En résultat on est assuré que le fichier ne contient que des lignes de noms de fichiers formatés rem Enfin on test chaque entrée sur le troisiéme champ qui contient la taille du fichier. For /F "tokens=1,2,3,4" %%i IN (%Temp%\T4.tmp) Do if %%k GTR %Min% echo %%i %%j %%k %%l
:merci: