web-dev-qa-db-fra.com

Comment faire pour que `ls` affiche la taille des fichiers en mégaoctets?

De quelles commandes ai-je besoin pour que ls de Linux affiche la taille du fichier en Mo?

524
Paul Sheldrake

ls -l --block-size=M vous donnera une longue liste de formats (nécessaire pour voir réellement la taille du fichier) et arrondissez la taille des fichiers au Mio le plus proche.

Si vous souhaitez des unités Mo (10 ^ 6 octets) plutôt que MiB (2 ^ 20 octets), utilisez --block-size=MB au lieu.

Si vous ne voulez pas que le suffixe M soit attaché à la taille du fichier, vous pouvez utiliser quelque chose comme --block-size=1M. Merci Stéphane Chazelas pour avoir suggéré cela.

Si vous voulez simplement des tailles de fichier en unités "raisonnables", plutôt que spécifiquement mégaoctets, alors vous pouvez utiliser -lh pour obtenir une liste au format long et une présentation de taille de fichier lisible par l'homme . Cela utilisera des unités de taille de fichier pour conserver les tailles de fichier avec environ 1 à 3 chiffres (vous verrez donc des tailles de fichier comme 6.1K, 151K, 7.1M, 15M, 1.5G etc.

Le --block-size Le paramètre est décrit dans la page de manuel de ls; man ls et recherchez SIZE. Il permet également des unités autres que MB/MiB, et d'après l'apparence (je n'ai pas essayé) des tailles de blocs arbitraires également (vous pouvez donc voir la taille du fichier comme un nombre de blocs de 429 octets si vous le souhaitez). à).

Notez que les deux --block-size et -h sont GNU extensions au-dessus de le groupe ouvert ls , donc cela peut ne pas fonctionner si vous n'avez pas GNU userland (ce que font la plupart des installations Linux). Le ls de GNU Coreutils 8.5 prend en charge --block-size et -h comme décrit ci-dessus. Merci à kojiro pour l'avoir signalé.

598
a CVn

ls -lh donne des tailles de fichier lisibles par l'homme, format long.

Il utilise les suffixes k, M, G et T (ou aucun suffixe pour les octets) selon les besoins, de sorte que le nombre reste petit, par ex. 1.4K ou 178M.

-h est une extension GNU coreutils, pas POSIX de base.

Notez que cela ne répond pas exactement à la question. Si vous voulez des tailles strictement en MiB, même pour des fichiers petits ou gigantesques, la réponse de Michael Kjörling le fait pour GNU coreutils ls .

445
Sirex

ls -lhS trier par taille, dans un format lisible par l'homme

56
jaciefan

Et c'est l'option pour lister tout dans un ordre de répertoire par taille de fichier (toujours lisible par l'homme) croissant.

ls -lSrh
15
Marcos Placona