Comment connaître la taille d'un répertoire? Y compris les sous-répertoires et les fichiers.
Comment connaître la taille d'un répertoire? Y compris les sous-répertoires et les fichiers.
Réponses:
du -s directory_name
Ou pour obtenir une sortie lisible par l'homme:
du -sh directory_name
L' -s
option signifie qu'elle ne listera pas la taille de chaque sous-répertoire, mais uniquement la taille totale.
du -sh bag
a parfaitement fonctionné!
Bien que l’utilisation d’un paquet séparé tel que ncdu puisse bien fonctionner, la même comparaison de plusieurs dossiers peut être faite, dans une certaine mesure, en donnant simplement une liste de dossiers à dimensionner. Par exemple, pour comparer les répertoires de niveau supérieur sur votre système ...
cd /
sudo du -sh ./*
du -sh /*
du -csh
-c produit le grand total
-c
n'a pas de sens à utiliser avec -s
, non? -s
affiche uniquement la taille du répertoire spécifié, c'est-à-dire la taille totale du répertoire.
Essayer
du -hax --max-depth=1 / | grep '[0-9]G' | sort -nr
Cela aide à trouver des répertoires volumineux à parcourir en utilisant du -sh ./*
vous pouvez aussi utiliser ls -ldh:
ls -ldh /etc
drwxr-xr-x 145 root root 12K 2012-06-02 11:44 /etc
-l est pour une longue liste; -d est destiné à afficher les informations de répertoire, pas le contenu du répertoire, -h est destiné à afficher la taille dans un format lisible par l'homme.
J'installe toujours le paquet "ncdu" et vois toutes les sorties de tous les répertoires avec une représentation graphique. En effet, j’ai généralement besoin de savoir ce qui occupe le plus d’espace disque sur mes machines, quel que soit le résultat de la synthèse d’un seul répertoire.
Utilisation: sudo ncdu /
(Vous n’avez pas besoin sudo
de dossiers sur lesquels vous avez des droits de lecture).
L'analyse des statistiques d'utilisation du disque sur l'ensemble du système de fichiers prendra un certain temps. Il a une belle représentation graphique en ligne de commande et inclut une navigation au clavier à l'aide des touches fléchées, comme pour aller plus en profondeur ou plus haut dans le chemin balayé. Vous pouvez également supprimer des éléments en appuyant sur D.
Vous pouvez utiliser "file-size.sh" de la bibliothèque awk Velour :
ls -ARgo "$@" | awk '{q += $3} END {print q}'
du -hd1
listera dans un format lisible par l’homme les tailles de tous les répertoires, par exemple
656K ./rubberband
2.2M ./lame
652K ./pkg-config
J'ai essayé avec la commande ci-dessous car déjà la meilleure réponse a été fournie
sudo find . -maxdepth 1 -exec du -shk {} \;| awk 'NR >1'| awk 'BEGIN{sum=1}{sum=sum+$1}END{print sum}'
sortie
sudo find . -maxdepth 1 -exec du -shk {} \;| awk 'NR >1'| awk 'BEGIN{sum=1}{sum=sum+$1}END{print sum}'
679445
du
, l'unité par défaut est constituée de blocs de 512 octets selon POSIX et de kilo-octets sous Linux (à moins que la variable d'environnement nePOSIXLY_CORRECT
soit définie) ou avecdu -k
.