V případě, že v linuxu potřebujeme zjistit kolik zabírají adresáře a seřadit je podle velikosti, pak stačí klasický příkaz:
$ du -s * | sort -n
Zádrhel nastane v případě, když některý(é) adresář je namountovaný z jiného filesystému, například síťového. Jednak pak trvá výpočet dlouho a navíc je vhodnější výpočet obsazení vždy řešit lokálně.
Pak přijde vhod příkaz, který z výpočtu vynechá adresáře, které mají jiný druh filesystému.
$ find . -mindepth 1 -maxdepth 1 -type d \( -exec mountpoint -q {} \; -o -print0 \) | xargs -0 du -sxh
Seřazení je evidentní - vynechat -h (human readable velikost) a přidat numerický sort:
$ find . -mindepth 1 -maxdepth 1 -type d \( -exec mountpoint -q {} \; -o -print0 \) | xargs -0 du -sx | sort -n
Views: 0