Шпаргалка по команде du

linux

Любая команда без указания пути покажет размер для текущего каталога.

Опции:

-h показывает размер в удобном для человека виде
-s показывает итог
 используется для подсчёта общей суммы
-a выводит размер так же и для файлов
-x оставаться в пределах одной файловой сиситемы
--max-depth=1 задаёт глубину просмотра
--exclude=<шаблон> исключить файлы или папки входящие в шаблон
--exclude-from=<файл> исключить, если есть совпадение с содержимым файла

Узнать размер только указанной папки:

du -sh /home/<user>/

Узнать размер указанной папки и ее потомков:

du -h /home/<user>/

Показать отдельно размеры всех вложенных директориий и файлов текущей директории:

du -sh *

Показать размер и отсортировать по нему:

du -s * | sort -nr

Поскольку предыдушая сортировка работает по числам и не понимает килобайты и мегабайты, то для удобного вида есть такая команда:

du -sh * | sort -hr
# или более извращённая
du -s * | sort -nr | cut -f 2- | while read a; do du -hs $a; done

Показать файлы и папки размер которых превышает 1000 Мб:

du -xm | sort -nr | awk '{if($1>1000) print}'
# или
find /home/ -type d -exec du -sm "{}" \; | awk "{if (\$1 > 1000) print}"
Комментарии