Bonjour,
Pourriez-vous m'indiquer la fonction qui permet de calculer la taille des dossiers?
Bonjour,
Pourriez-vous m'indiquer la fonction qui permet de calculer la taille des dossiers?
Bonjour
La fonction stat() est ton amie.
Maintenant il faut bien faire attention à la méthodologie. Parce que, stricto-sensu, la taille d'un dossier c'est la taille du fichier de type "d". Or ce type de fichier ne contient que 2 choses
- le n° d'inode (4 octets)
- le nom du fichier (1024 octets)
Donc à partir de là, la taille du dossier c'est (grosso-modo) dans les 1028 octets * (nb fichiers + 2) (+2 parce qu'un dossier contient en plus "." et "..")
Donc si tu entends "la taille utilisée par le dossier" alors tu peux te contenter d'appliquer stat() et regarder le champs st->size. Mais si tu entends "espace occupé par les fichiers qui le composent" (un peu ce que fait "du") alors il te faut examiner chaque fichier dudit dossier (opendir() + readdir()) et regarder sa taille (toujours avec stat()). En pensant aussi que si tu tombes sur un sous-dossier, alors rebelote (récursif)...
Mon Tutoriel sur la programmation «Python»
Mon Tutoriel sur la programmation «Shell»
Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
Et on poste ses codes entre balises [code] et [/code]
Partager