Существует ли команда терминала Ubuntu 14.04, которая позволяет вывести список размеров папок и разбить размер каждого файла в папке на части и его размер?
Одна из моих папок занимает очень много места, и я хотел бы определить, какие файлы или подпапки являются виновниками.
Я знаю, du -sh
что выдает общий размер папки и ls -lah
в каждой папке выдает размеры файлов/подпапок, но есть ли способ получить общий снимок всего?
решение1
Да, есть tree
команда. Установите ее через sudo apt-get install tree
и введите следующее:
tree -h
-h Print the size of each file but in a more human readable way, e.g. appending a size letter for kilo‐
bytes (K), megabytes (M), gigabytes (G), terabytes (T), petabytes (P) and exabytes (E).
Сделанный :)
решение2
Мне нравится использовать просто:
du -chd 1 | sort -h
Он выводит общий размер каждого подкаталога из текущего местоположения каталога («1» выше), а также общий размер всех подкаталогов и сортирует его по удобочитаемым размерам:
решение3
Я нашел это полезным10 лучших вариантов использования диска. Для быстрого использования командная строка выглядит следующим образом:
du -m | sort -nr | head -10
В нем перечислены все папки (включая повторяющиеся подпапки), занимающие наибольшее количество дискового пространства, отсортированные по размеру.
решение4
Дерево красивое, и я знаю, что это может быть то, о чем вы просили. Я хотел представить вам что-то немного другое, чтобы помочь вам найти то, что вы ищете (что занимает больше всего места):
du -lah|grep -v -e '^.*K[[:space:]]'|sort -r -n
Вы также можете передать данные в head, чтобы получить только верхний список:
du -lah|grep -v -e '^.*K[[:space:]]'|sort -r -n|head
Я пытался на самом деле дать это с grep -v -e
..., но это, похоже, не работает на выходе по du -lah
какой-то причине. Хотя этого должно быть достаточно.