Как я перечисляю все файлы в каталоге и их рекурсивных размерах файла?
править
Я хочу видеть размеры, 'свернутые' к родительским каталогам в перечисленном каталоге. Я не хочу видеть дочерние каталоги или их содержание или размеры.
Я предполагаю, что самый легкий путь путем ввода ls -l
, или ls -lh
который обеспечит размер файла в человекочитаемом формате (КБ, МБ, и т.д.).
Если 'рекурсивно' означает перечислять все последующие папки, например:
/foo/
/foo/bar/...
Затем необходимо также добавить параметр R
, как ls -lR
или ls -lhR
Больше информации для ls
может быть найден путем ввода man ls
Обновление:
Следующая команда как предложенный Lekensteyn, вероятно, сделает задание:
du -h --max-depth=1 <folder>
-h
для человекочитаемого
--apparent-size
иначе к размерам дисплея, как уже указано
--max-depth
уровень подпапок, до которых Вы хотите спуститься.
apt-get install ncdu
Это является интерактивным слишком поэтому, если Вы хотите проверить sub папку просто, ВНИЗ, и Войти в него.
Получить общий размер каталога и всех детей
du -hs directory/*
Также выезд tree
. Это не установлено по умолчанию, но является репозиториями.
Пример:
richard@legend:~$ tree Applications/ -s
Applications/
├── [ 4096] AlexFTPS-1.0.2
│ ├── [ 31232] AlexPilotti.FTPS.Client.dll
│ ├── [ 274432] C5.dll
│ ├── [ 1457] C5-License
│ ├── [ 35147] COPYING
│ ├── [ 7639] COPYING.LESSER
│ ├── [ 70] ftps
│ ├── [ 28672] ftps.exe
│ ├── [ 98304] Plossum CommandLine.dll
│ ├── [ 1557] Plossum-License
│ └── [ 2560] README
└── [ 4096] src
└── [ 180849] AlexFTPS_bin_1.0.2.zip
Больше опций может быть найдено в странице справочника.
Так как Вы конкретно не упоминаете необходимость в на терминальном основанном решении я думаю баобаб иначе Использование диска, которое Анализатор пропускает из списка.
Это установлено в Ubuntu по умолчанию и делает точно, что Вы хотите в хорошем графическом UI со способностью выполнить развертку иерархии каталогов.
Кроме отображения списка каталогов с их размерами, это также показывает кольца или treemap диаграмму использования файловой системы, которое чрезвычайно полезно для визуализации каталогов, которые поднимают большую часть пространства.
Терминальное решение du
команда:
du --all --human-readable --apparent-size
(стенография: du -ah --apparent-size
)
du
отображает использование диска для каждого файла и каталога. Опции объяснили:
--all
, -a
- покажите размеры для файлов также, не просто каталоги--human-readable
, -h
- покажите размеры в человекочитаемом формате, например. 10K
(10 килобайтов), 10
(10 байтов)--apparent-size
- покажите фактический размер файла, не размеры, как используется диском.Для получения отсортированного списка помещает все в МБ и вид:
du -m * | sort -n
Или используйте инструмент, такой как DiskReport для генерации сообщения о полном дисковом дереве.
Другое терминальное решение с find
и вид (размером файла, столбцом 1)
$ find . -maxdepth 1 ! -path . -printf "%s %p\n" | sort -n -k1
178 ./somefile.txt
219 ./somefile2.txt
4096 ./c
4096 ./cs2
4096 ./perl
4096 ./python
4096 ./random
4096 ./sh
Это, кажется, добивается цели, когда символьные ссылки включены.
ls -LRlh
Для отображения размера содержимого папки с меньшим набором текста ( -d
сокращенно от - max-depth
)
du -hd1
Мне нравится следующий подход:
du -schx .[!.]* * | sort -h
где:
s
: отображать только итог для каждого аргументаc
: подводить общий итогh
: печатать размеры в удобочитаемом форматеx
: пропускать каталоги в разных файловых системах.[!.]* *
: суммировать использование диска для каждого файла, рекурсивно для справочников (в т.ч. "скрытых")| sort -h
: Сортировка на основе удобочитаемых чисел (например, 2K 1G)