Lorsque j'essaie de calculer la taille des fichiers et du répertoire dans le répertoire, cela prend plus de temps. La commande que j'ai utilisée est du -ch --max-depth=1
.
Existe-t-il un autre moyen de calculer la taille totale des fichiers et des dossiers?
Merci
La commande du
récupère l'utilisation du disque de tous les fichiers du répertoire et de tous les sous-répertoires (récursivement) par défaut. Le temps passé par du
est donc lié au nombre de fichiers analysés. Les options -s
ou --summarize
et --max-depth
influence simplement la sortie de la commande (et non l'analyse elle-même).
Certaines options du
qui limitent l'analyse des fichiers sont --one-file-system, --exclude et --exclude-from.
Si vous ne voulez pas rentrer dans les sous-répertoires, vous pouvez utiliser find à la place, ce qui vous donne beaucoup plus de contrôle sur les fichiers à analyser. Mais il ne peut pas résumer récursivement l'utilisation du disque.
find /path/to/dir -maxdepth 1 -printf "%k\t%p\n"
Remarquerez que %k
renvoie toujours l'utilisation du disque par blocs de 1k et l'utilisation signalée du disque de fichiers épars peut être inférieure ou légèrement supérieure à la taille de fichier renvoyée par %s
de la commande ls
. Ainsi, "% k" se comporte comme la commande du
pour les fichiers uniques.
Si vous souhaitez combiner les fonctionnalités de find
et du
, vous pouvez combiner les deux par quelque chose comme.
find . -maxdepth 1 -name "xyz*" -print0 | du --files0-from=-