Cette question a déjà une réponse ici:
Sous Linux, je cherche une commande pour répertorier le fichier le plus volumineux et / ou les répertoires les plus volumineux d'un répertoire.
Cette question a déjà une réponse ici:
Sous Linux, je cherche une commande pour répertorier le fichier le plus volumineux et / ou les répertoires les plus volumineux d'un répertoire.
Réponses:
De n'importe quel répertoire:
du -a | sort -n -r
La commande suivante vous montre un niveau de répertoires et leur taille
du --max-depth = 1 / chemin | trier -r -k1,1n
Si l'un d'entre eux dépasse vraiment (le dernier de la liste est le plus gros dû à sort -r
), vous relancez la commande dans ce répertoire, puis continuez jusqu'à ce que vous trouviez le répertoire / fichier incriminé.
Si vous ne voulez que les dix plus gros fichiers,
find / home -type f -exec du -s {} \; | trier -r -k1,1n | tête
sort -r
ou non. Y at-il un moyen d'obtenir le plus grand nombre au sommet?
sort
ou sort -r
. Est-ce que je ne comprends pas comment ça marche? Je suppose que ce n'est pas un gros problème. Votre exemple est très utile et m'a fourni les informations dont j'avais besoin.
sort
I have ( sort (GNU coreutils) 8.13
Ubuntu 12.04.3), l'option -r
ne fonctionne pas si elle -n
suit immédiatement -k
( -k1,1n
). Cette commande d'options fonctionne: sort -rnk1,1
.
Un utilitaire appelé ncdu
vous donnera les informations que vous recherchez.
sudo apt-get install ncdu
Sous OS X, il peut être installé avec Homebrew:
brew install ncdu
Essayez la ligne suivante (affiche les 20 plus gros fichiers du répertoire en cours):
ls -1Rs | sed -e "s/^ *//" | grep "^[0-9]" | sort -nr | head -n20
ou avec des tailles lisibles par l'homme:
ls -1Rhs | sed -e "s/^ *//" | grep "^[0-9]" | sort -hr | head -n20
La deuxième commande pour fonctionner correctement sur OSX / BSD (comme ce
sort
n’est pas le cas-h
), vous devez installer àsort
partir decoreutils
.
Il est donc utile d’avoir ces alias dans vos fichiers rc (chaque fois que vous en avez besoin):
alias big='du -ah . | sort -rh | head -20'
alias big-files='ls -1Rhs | sed -e "s/^ *//" | grep "^[0-9]" | sort -hr | head -n20'
du -sh /path * | sort -nr | grep G
G pour GIG (pour éliminer les plus petits) fichiers / répertoires
G
dans le nom du fichier.