Узнаем размер папки в Linux

06.04.2022, 01:03

Посмотреть занимаемое место конкретной папкой на диске Linux получится через файловый менеджер. Нужно открыть свойства файла. Но там информация отображается не в полной мере, а нередко нужны подробности. С помощью утилиты ls получить детальные сведения не получится. А вот утилита du для этих целей подойдет отлично. Дальше расскажем, как посмотреть размер папки в Linux с помощью du. Для этого разберем два примера ее использования

Как узнать размер каталога

В начале расскажем, как получить информацию об определенной папке, с учетом или без учета ее вложений. Дальше перейдем к подпапкам в конкретном каталоге. Заодно упомянем несколько полезных нюансов работы с du, например, возможность сортировки данных.

Определенная папка

В качестве примера возьмем папку Downloads. Команда для вывода ее размера выглядит следующим образом:

$ sudo du -sh /home/root-user/Downloads

В результате выведется её занимаемое место на диске:

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

  • -s – выводить только размер самой папки, без вложенных подпапок.
  • -h – выводить информацию в привычном виде. Речь о единицах измерения (K – килобайт, M– мегабайт и т. д.).

Также вы можете посмотреть общий размер только самих файлов в папке, без учета содержимого подпапок. Для этого используется опция -S:

$ sudo du -sSh /home/root-user/Downloads

Как видим, узнать размер папки очень просто.

Папки в каталоге

Второй полезный сценарий использования утилиты du заключается в выводе размера всех вложенных папок в определенной директории, без учета файлов внутри. Опять в качестве примера возьмем директорию Downloads. Вот нужная нам команда:

$ sudo du -h /home/root-user/Downloads

Вы получите результате ее выполнения, в терминале отобразится сначала размер вложенных подпапок, а потом и самой папки. С помощью опции --max-depth можно задать максимальную глубину вложенности. Если вам интересна только сама папка, то глубина равна 0, если еще и вложенные в нее подпапки, то глубина равна 1 и больше:

$ sudo du -h --max-depth=1 /home/root-user/Downloads

Это полезно, когда директория сильно разрослась, и нужно ограничить область действия для утилиты du.

Также вы можете увидеть размер самой папки и всех файлов внутри нее, в том числе и во вложенных папках. Для этих целей нужно дополнительно задать опции -a:

$ sudo du -ah /home/root-user/Downloads

Если данных на выходе получается слишком много, то в некоторых ситуациях имеет смысл их отсортировать по размеру. Для этого после пути до директории в основной команде нужно добавить | sort -rh:

$ sudo du -ah /home/root-user/Downloads | sort -rh

Теперь вы знаете как посмотреть размер папки в Linux и ее вложений с помощью утилиты du.