Как узнать размер всех каталогов в текущем каталоге (сортировка по человечески читаемому размеру)

sudo du -ks $(ls -d */) | sort -nr | cut -f2 | xargs -d '\n' du -sh 2> /dev/null


Команда sudo du -ks $(ls -d */) | sort -nr | cut -f2 | xargs -d '\n' du -sh 2> /dev/null позволяет узнать размер всех каталогов в текущем каталоге и сортировать их по человечески читаемому размеру. Она выполняется в несколько шагов:

1. sudo du -ks $(ls -d */): находит список всех каталогов в текущем каталоге и выводит их размер в килобайтах.

2. sort -nr: сортирует размеры каталогов в обратном порядке (по убыванию).

3. cut -f2: отсекает первый столбец, оставляя только имена каталогов.

4. xargs -d '\n' du -sh 2> /dev/null: выводит размер каталогов в человекочитаемом формате, суммируя размеры всех файлов и подкаталогов внутри каждого каталога. Ошибки выводятся в /dev/null, чтобы скрыть их.

Альтернативой этой команды может быть использование комбинации других команд, таких как find, du, awk и sort. Однако данная команда предоставляет готовое решение для данной задачи без необходимости использовать несколько команд вручную.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *