Построение дерева каталогов, сортированное по размеру

Подскажите, когда я делаю du, и смотрю размер каталогов ls -l, _некоторые_ _НЕ ПУСТЫЕ_ каталоги по прежнему имеют размер в 4096 байт. В чём дело? >_< А то мне надо вывести дерево каталогов отсортированное по размеру...
Вообщем то я уже написал скрипт на php, который делает это. Три дня потратил. Стыдно. Сильно лажанулся (что долго делал). И теперь мне интересно: как можно сделать это же, но командами шела?

В выводе ls -l ВСЕ

В выводе ls -l ВСЕ не пустые каталоги будут иметь размер в 4096 байт, т.к. именно такое количество занимает запись о каталоге в файловой системе. Попробуйте приспособить по Ваши задачи вывод ls с ключом -R

??

Не понял.
Ещё раз: надо вываести дерево каталогов, отсортированное по размеру. Вот для примера то, что сейчас выводит мой скрипт. Мне очень интересно, как сделать тоже самое средствами юних, и можно ли так сделать вообще?

tmp (2639.9МБ = 2768149866б)

        Gungrave (2082.4МБ = 2183603099б)

Desktop (92.5МБ = 97088836б)

        Nightmares on Wax - Carboot Soul (92.5МБ = 97084740б)

work (7.0МБ = 7422098б)

gentoo_docs (5.8МБ = 6171306б)

        bugzilla-howto.xml_files (0.9МБ = 999927б)

        vi-guide.xml_files (0.3МБ = 352219б)

        gnupg-user.xml_files (0.1МБ = 202497б)

        alsa-guide.xml_files (0.1МБ = 107991б)

        gnap-userguide.xml_files (86.2кб = 88351б)

        portage-utils.xml_files (71.7кб = 73497б)

        gentoolkit.xml_files (71.7кб = 73497б)

        [skiped]

demo (3.6МБ = 3873925б)

        simples (2.8МБ = 3030536б)

                clouds_sip (2.1МБ = 2238081б)

                        clouds (0.9МБ = 996992б)

                        src (69.1кб = 70805б)

                libutil (0.3МБ = 353886б)

                ogltut2.xml_files (0.1МБ = 111705б)

        intro16 (0.5МБ = 617065б)

        cube_demo_v2 (0.2МБ = 222228б)

                bin (0.1МБ = 162760б)

                src (54.0кб = 55372б)

                        obj (28.5кб = 29244б)

каталог - файл в

каталог - файл в котором содежатся ссылки на другие файлы. тебе видимо нужен не размер каталога, а размер того что в каталоге

дык можно это

дык можно это сделать в пару-тройку команд на баше?

.

А я пользуюсь sys-fs/ncdu

    9.4GB [##########] /That
  693.5MB [          ] /Mo
   14.0MB [          ]  Haskell.pdf
    0.0 B [          ] /XoXoXo

а в папке That
    4.5GB [##########] /Season 3
    3.8GB [########  ] /Season 2
    1.0GB [##        ] /Season 1

Доп. функционала - куча:
n Sort by name (ascending/descending)
s Sort by size (ascending/descending)
d Delete selected file or directory
t Toggle dirs before files when sorting
g Show percentage and/or graph
p Toggle between powers of 1000 and 1024
a Toggle between apparent size and disk usage
h Show/hide hidden or excluded files
i Show information about selected item
r Recalculate the current directory

P.S.
1) Это мощнее, чем можно сделать в пару-тройку команд на баше
2) Название темы, его как-то надо, наверное, изменить, потому что у du нет странных багов :-)

Это как раз то

Это как раз то что надо, спасибо!! но я искренне надеюсь, что мои труды всё таки не пропадут зря.

Есть система сбора трафика на случай "расследования происшествий", и каталоги, которые стали слишком большие по размеру, надо переносить на другой диск, "в архив". Нет, этот диск не кладёться в шкаф (кажеться); да, я знаю о программе, которой можно логически обьеденять диски в один. Но я пока не знаю всей задумки начальника. Наверное он тоже сам пока не знает чего хочет.. )

зачем такие сложности du -hs

зачем такие сложности
du -hs `ls`|sort -rn

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".