Sur mon système Ubuntu, en utilisant ext4, du -b file
donne la taille en octets d'un fichier réel, et du -b dir
donne la taille en octets du fichier (s) + surcharge du répertoire, la surcharge est, dans mon cas, des multiples de 4096 octets ..
Cette surcharge augmente à mesure que le nombre de fichiers augmente.
Remarque: même si les fichiers sont supprimés, la surcharge du répertoire reste au niveau supérieur où elle se trouvait avant la suppression des fichiers.
Je n'ai pas essayé de redémarrer, pour voir s'il revient, mais dans les deux cas, cela signifie que la taille du répertoire varie en fonction des circonstances historiques.
Compter la taille de chaque fichier peut être la meilleure option pour une valeur précise de la taille totale des fichiers .
Le script suivant totalise toutes les tailles de fichiers (en octets).
Pour OS X, si vous n'avez pas l' -b
opton pour 'du', vous pouvez utiliser à la stat
place. (Si vous l'avez :) ... La ligne commentée montre l' stat
alternative Ubuntu à du -b
;
unset total
while IFS= read -r -d $'\0' rf; do
# (( total += $(stat "$rf" | sed -nre 's/^ Size: ([0-9]+).*/\1/p') ))
(( total += $(du -b "$rf" | cut -f 1) ))
done < <(find . -type f -name '*' -print0)
echo $total