http://linuxcmd.ru/kak-uznat-razmer-papki-v-linux
du -s *|sort -nr|cut -f 2-|while read a;do du -hs $a;done
Просмотр размера текущей папки
Чтобы показать объем просто одного текущего каталога (со всеми вложенными файлами + подкаталогами) подойдёт команда du с ключиком -sh.
Вот пример, как определить размер директории данного сайта:
du -sh
root@Debian:/var/www/linuxcmd.ru# du -sh
25M .
root@Debian:/var/www/linuxcmd.ru#
Посмотреть размеры всех папок
Если нужно посчитать вес всех директорий плюс файлы — добавляем звёздочку:
du -sh *
root@Debian:/var/www/linuxcmd.ru# du -sh *
4.0K unix.html
8.0K authorize.php
4.0K cron.php
2.1M files
4.0K centos.html
72K img
2.2M includes
4.0K index.php
4.0K install.php
912K misc
12M modules
196K profiles
4.0K robots.txt
80K scripts
7.0M sites
696K themes
8.0K translations
20K update.php
4.0K web.config
4.0K xmlrpc.php
0 ubuntu.txt
root@Debian:/var/www/linuxcmd.ru#
Отобразить размеры всех вложенных папок
Чтобы проверить информацию в том числе вообще по всем папкам, вместе со вложенными — понадобится самый короткий вариант:
du -h
Внимание: если такой случайно запустить в корне на объёмном диске с большим количеством информации — лучше сразу жмите CTRL-C, т.к. во-первых, иначе придётся сильно подождать , во-вторых, десятки-сотни экранов информации будут бессмысленными. Потому эта простая команда должна использоваться лишь для, соответственно, простых случаев.
Отсортировать папки по объёму
du -s *| sort -nr
Покажет объём в килобайтах с сортировкой — самые большие папки/файлы сверху. Если нужно в мегабайтах:
du -sm *| sort -nr
К сожалению более удобный ключик h («human» — автовыбор кило-мега-гига) в данном случае (du -sh *| sort -nr) не подойдёт, т.к. сортировка идёт по «числам» (не учитывая, что это KB/MB/GB). Для этого придётся использовать длинную команду:
du -s *|sort -nr|cut -f 2-|while read a;do du -hs $a;done
root@Debian:/var/www/linuxcmd.ru# du -s *|sort -nr|cut -f 2-|while read a;do du -hs $a;done
12M modules
7.0M sites
2.2M includes
2.1M files
912K misc
696K themes
196K profiles
80K scripts
72K img
20K update.php
8.0K translations
8.0K authorize.php
4.0K xmlrpc.php
4.0K web.config
4.0K robots.txt
4.0K install.php
4.0K index.php
4.0K centos.html
4.0K cron.php
4.0K unix.html
0 ubuntu.txt
root@Debian:/var/www/linuxcmd.ru#
Получается «заумно», зато всё красиво!
Такую можно уже запускать даже в корне, обождав (если файлов много — серьёзно обождав) получим нечто типа:
root@Debian:/# du -s *|sort -nr|cut -f 2-|while read a;do du -hs $a;done
du: cannot access `proc/30976/task/30976/fd/4′: No such file or directory
du: cannot access `proc/30976/task/30976/fdinfo/4′: No such file or directory
du: cannot access `proc/30976/fd/4′: No such file or directory
du: cannot access `proc/30976/fdinfo/4′: No such file or directory
314M usr
291M var
120M lib
76M tmp
34M home
18M boot
4.6M bin
4.4M sbin
3.0M etc
56K dev
32K root
16K lost+found
4.0K srv
4.0K selinux
4.0K opt
4.0K mnt
4.0K media
0 sys
du: cannot access `proc/31009/task/31009/fd/4′: No such file or directory
du: cannot access `proc/31009/task/31009/fdinfo/4′: No such file or directory
du: cannot access `proc/31009/fd/4′: No such file or directory
du: cannot access `proc/31009/fdinfo/4′: No such file or directory
0 proc
root@Debian:/#
Комментарии
Linux + размер папки = du —si -s
Вообще-то, это то же самое, как и определение размера директории с помощью du -sh.
Ибо ключик —si = -h, лишь считающий, что 1024=1000.
Народ, а как найти размер папки (linux), у которой он больше чем, скажем, 100 мегабайт?
Придётся использовать (для linux — размер папок) ещё более хитрую конструкцию с добавлением find:
п.с. Небольшая неудобность будет в том, что если вложенная папка больше 100M, то будут перечислены и все папки «более высокого уровня» — ведь они тоже будут весить больше 100Мб.
п.с.п.с. Если требуются другие пределы, скажем, больше 20k, то вместо…
…пишем…
…и т.п. по аналогии.
Выводи то, что весит больше 100Мб, по возрастанию:
Не сработает.
А вот один из гуру линуксов подсказал следующие вариантики:
Linux — узнать размер папки с сортировкой
Linux — размер каталогов с сортировкой без вывода самих размеров
показывает все папки в каталоге в мегабайтах и сортирует по возрастанию.
У команды sort есть ключик -h. Следующая команда выведет в удобочитаемом виде список директорий по убыванию размера: