Отображение пользователя и папок для использования диска

Я пытаюсь составить список с серверов, и мне было интересно, можно ли это сделать с помощью любого терминального кодирования (в котором я сейчас довольно слаб)

Пример, в основном В каталоге есть тонны подпапок (уровень 2), и внутри них также находятся тонны подпапок (уровень 3 глубоко?)

Поэтому мне было интересно, даст ли мне нормальное кодирование в терминале:

  • , какой пользователь занимает больше всего места (уровень 3), при этом отображаются папки
  • 10 лучших людей, занимающих больше всего места (уровень 2)

Основной каталог:

|- sub_lvl_2_A
    |- sub_lvl_3_A
|- sub_lvl_2_B
    |- sub_lvl_3_B
    |- sub_lvl_3_C
1
задан 14 July 2014 в 17:59

1 ответ

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

(Необходимо быть, поддерживают это для работы),

Действительно, Вы просто изменяете аргумент -d (макс. глубина) опция:

Распечатать размер корневого каталога каждого пользователя в порядке убывания размером:

sudo du -d 1 /home | sort -gr

Для печати размеров папок в рамках корневого каталога каждого пользователя (уровень 3) (предупреждение, это обязано быть действительно длинным, Вы могли бы хотеть передать его по каналу к less):

sudo du -d 2 /home

(если произведенный длинно):

sudo du -d 2 /home | less

Если бы Вы хотите отсортировать подкаталоги каждого пользователя размером, то необходимо было бы работать du индивидуально для каждого пользователя:

sudo du -d 1 ~user1 | sort -gr
sudo du -d 1 ~user2 | sort -gr

... и так далее.

Если Вы хотите работать от другой начальной точки, просто изменить последний аргумент du (/home выше) к каталогу Вы хотите работать от. Изменение аргумента -d изменится, сколько уровней это рекурсивно вызывает через.

2
ответ дан 14 July 2014 в 17:59

Другие вопросы по тегам:

Похожие вопросы: