Connaitre la taille d'un fichier (en .bat)

Fermé
ordi - 28 févr. 2007 à 12:39
cs-bilou Messages postés 769 Date d'inscription dimanche 2 décembre 2007 Statut Membre Dernière intervention 24 février 2011 - 8 mars 2009 à 21:05
Bonjour,

Je souhaiterai écrire un fichier .bat qui me retourne un message lorsqu'un fichier est vide.

Pourai je avoir de l'aide s'il vous plait car je suis encore novice en .bat.

Merci d'avance.
A voir également:

2 réponses

Bonjour ordi,

j'ai pas mal cherché et j'ai trouvé cela:

call :size_file fichier_à_controler.txt
if %size%==0 echo file empty>>fichier_de_log.txt


:size_file
set size=%~z1
goto exit
:exit

le call, te permet d'appeler la fonction size_file en lui passant en paramètre le fichier à controler. Ton script s'arrete alors et va chercher la fonction :size_file. Avec la fonction set tu affecte à la variable size la valeur de la taille de ton fichier (Pour information, si tu fais un clique droit sur ton fichier puis propriété, la taille retourné est celle écrite en face de size et non size on disk). La variable %~z1 correspond à la taille de ton fichier. ensuite le goto exit te permet de sortir de la fonction. Ton script reprend donc ou il s'était arrété c'est à dire au niveau du IF. Là tu test ta valeur et tu affiche ton message. Ici je l'affiche dans un fichier de log.

Voila.
8
bonjour,

connais tu la commande pour faire la meme chose mais sur un dossier complet

exemple :

si c:/dossier est superieur a 2 octet executer la commande



merci d avance
0
cs-bilou Messages postés 769 Date d'inscription dimanche 2 décembre 2007 Statut Membre Dernière intervention 24 février 2011 164
8 mars 2009 à 21:05
Tien voila.
Là c'est pour tout les fichier MP3:

@echo off
for %%i in (*.mp3) do (
echo %%~ni pese %%~zi Octet.
)
pause


Bilou
2