Поиск по сайту:

Как проверить размер каталога из командной строки Linux


Хотя команда Linux ls может отображать размеры файлов, она не работает должным образом с каталогами, которые всегда будут отображаться как 4096 байт. Вам нужно будет использовать команду du, чтобы перейти в подкаталоги и распечатать итог.

Использование команды дю

Лучшей заменой ls – использовать du с парой флагов:

du -had 1

Флаг -h обозначает «человекочитаемый» и форматирует размеры в КБ, МБ и ГБ вместо того, чтобы вызывать калькулятор.

Флаг -a — это «все» и будет включать отдельные файлы, а также каталоги, что делает его полезным для имитации того, как работает ls.

Флаг -d 1 определяет, насколько глубоко du будет печатать результаты. По умолчанию он настроен на печать каждого отдельного подкаталога, что может быть проблемой, если у вас много вложенных файлов. Флаг -d добавит их все и распечатает общее количество для каждого видимого каталога, из которого вы выполняете команду.

Если вы предпочитаете отображать все каталоги, вы можете запустить команду с флагом --apparent-size , который отобразит общий размер каждого подкаталога, как если бы вы сделали правый щелчок > Свойства в ваш файловый менеджер.

Однако все это перемешано, поэтому, если вы хотите просмотреть самые большие каталоги в текущей папке, вы можете направить вывод в команду sort . Не забудьте также использовать флаг -h, иначе sort будет рассматривать 128 МБ как большее число, чем 1 ГБ. .

du -had 1 | sort -rh

По умолчанию du использует текущий каталог, но вы также можете настроить таргетинг на определенные каталоги. Просто передайте местоположение в качестве последнего аргумента.

du -had 1 ./world/

Поиск самых больших каталогов на вашем сервере

Распространенной задачей в Linux является отладка большого количества дискового пространства. Если вы хотите просмотреть общее использование для каждого диска, вы можете использовать df -h или установить инструмент мониторинга, такой как glances , который покажет его более четко:

Однако это не углубляется в каталоги и не находит источник проблемы. Для этого вы можете использовать du, но удалите флаг -d 1, чтобы поиск выполнялся во всех каталогах. Нацельте его на корень, отсортируйте и отфильтруйте 25 лучших каталогов, чтобы ваш экран не переполнялся.

du -ah / | sort -rh | head -n 25

Это может распечатать несколько ошибок для файлов, к которым он не может получить доступ; убедитесь, что вы запускаете его с помощью sudo.