Quelle commande imprimera les tailles de tous les fichiers et répertoires du répertoire tmp (y compris ceux cachés) et les triera par tailles du plus grand au plus petit au format lisible par l'homme (par exemple 2 Go)?
La sortie pourrait être la suivante:
file.mpg 2GB
file.avi 1.8GB
.backtup 1.7 GB (this is directory)
J'ai essayé d'utiliser les commandes ls
et du
mais je n'ai pas pu trouver les bons commutateurs.
la source
sort -nr
si vous voulez les plus grandes valeurs en haut.Pour répertorier les fichiers n'importe où sous
/tmp
, triés par taille:Pour répertorier les fichiers et les arborescences de répertoires immédiatement sous
/tmp
, triés par taille:Pour répertorier tous les fichiers et arborescences de répertoires n'importe où sous
/tmp
, triés par taille:(Un exemple pour illustrer la différence entre les trois commandes: s'il y a un fichier
/tmp/dir/file
, la première liste de commandes/tmp/dir/file
, la deuxième liste/tmp/dir
et la troisième liste les deux.)Toutes les commandes ci-dessus affichent les tailles en kilo-octets. Alors que GNU du peut produire des tailles «lisibles par l'homme» (avec des multiplicateurs k, M, G, etc.), leur tri est une autre affaire. Des coreutils GNU assez récents (≥7.4) peuvent le faire: remplacez simplement
du -k
pardu -h
etsort -k1n -k2
parsort -k1h -k2
. Sinon, voici un script awk grossier à convertir en tailles suffixées (arrondi vers le bas); il suffit de diriger lasort
sortie ci-dessus.la source
du
appel.J'utilise l'alias suivant pour cela:
alias ds='du -x --all --max-depth=1 . | sort -n'
Il imprime les tailles de tous les fichiers et les sous-répertoires de premier niveau du répertoire actuel.
la source
Avec la version actuelle du tri gnu (et emprunt du modèle de fichier @ penguin359)
Avec une ancienne version de sorte
EDIT: ajout du paramètre -S
du
pour ne pas inclure les sous-répertoires.la source
--apparent-size
aux paramètres du.MISE À JOUR: J'ai supprimé le script précédent. Voici une nouvelle version, utilisant
du
etawk
(la précédente utiliséetree
etsed
)C'est la sortie de:
dusort ~/test 1
Voici le script
la source
tree
cela. si vous voulez que l'espace disque soit utilisé, alorsdu
cela fait ... (tree
ne totalise pas un répertoire)man du
qu'il peut également signaler la "taille apparente du fichier" ....The apparent size of a file is the number of bytes reported by
wc -c 'sur les fichiers normaux, ou plus généralement,ls -l --block-size=1' or
stat --format =% s '. Par exemple, un fichier contenant le motzoo' with no newline would, of course, have an apparent size of 3.
affiche les fichiers les plus volumineux en premier, afin que vous puissiez qles voir dès que vous en avez vu assez.
la source