A Combination is always the best trick on Unix.
du -sk $(find . -type d) | sort -n -k 1
Will show directory sizes in KB and sort to give the largest at the end.
Tree-view will however needs some more fu... is it really required?
Note that this scan is nested across directories so it will count sub-directories
again for the higher directories and the base directory .
will show up at the end as the total utilization sum.
You can however use a depth control on the find to search at a specific depth.
And, get a lot more involved with your scanning actually... depending on what you want.
Depth control of find
with -maxdepth
and -mindepth
can restrict to a specific sub-directory depth.
Here is a refined variation for your arg-too-long problem
find . -type d -exec du -sk {} \; | sort -n -k 1