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

ordi -  
cs-bilou Messages postés 836 Statut Membre -
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

ben
 
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
Nicoco
 
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 836 Statut Membre 164
 
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